Date: Sat, 24 Nov 2007 20:05:55 +0100 From: Max Laier <max@love2party.net> To: Robert Watson <rwatson@freebsd.org> Cc: freebsd-net@freebsd.org, freebsd-current@freebsd.org Subject: Re: Switch pfil(9) to rmlocks Message-ID: <200711242006.04753.max@love2party.net> In-Reply-To: <20071123132453.W98338@fledge.watson.org> References: <200711231232.04447.max@love2party.net> <20071123132453.W98338@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart2551595.pF8jQdSoQI Content-Type: multipart/mixed; boundary="Boundary-01=_VYHSH3/ckykvJ7C" Content-Transfer-Encoding: 7bit Content-Disposition: inline --Boundary-01=_VYHSH3/ckykvJ7C Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Friday 23 November 2007, Robert Watson wrote: > On Fri, 23 Nov 2007, Max Laier wrote: > > attached is a diff to switch the pfil(9) subsystem to rmlocks, which > > are more suited for the task. I'd like some exposure before doing > > the switch, but I don't expect any fallout. This email is going > > through the patched pfil already - twice. > > Max, > > Have you done performance measurements that show rmlocks to be a win in > this scenario? I did some patchs for UNIX domain sockets to replace > the rwlock there but it appeared not to have a measurable impact on SQL > benchmarks, presumbaly because the read/write blend wasn't right and/or > that wasnt a significant source of overhead in the benchmark. I'd > anticipate a much more measurable improvement for pfil, but would be > interested in learning how much is seen? I had to roll an artificial benchmark in order to see a significant change= =20 (attached - it's a hack!). Using 3 threads on a 4 CPU machine I get the following results: null hook: ~13% +/- 2 mtx hook: up to 40% [*] rw hook: ~5% +/- 1 rm hook: ~35% +/- 5 [*] The mtx hook is inconclusive as my measurements vary a lot. If one=20 thread gets lucky and keeps running the overall time obviously goes down=20 by a magnitude. It seems however, that rmlocks greatly increase the=20 chance of that happening - not sure if that's a good thing, though. If=20 all threads receive approximately equal runtime (which is almost always=20 the case for rwlocks) the difference is somewhere around 10%. =2D-=20 /"\ Best regards, | mlaier@freebsd.org \ / Max Laier | ICQ #67774661 X http://pf4freebsd.love2party.net/ | mlaier@EFnet / \ ASCII Ribbon Campaign | Against HTML Mail and News --Boundary-01=_VYHSH3/ckykvJ7C-- --nextPart2551595.pF8jQdSoQI Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) iD8DBQBHSHYcXyyEoT62BG0RAty0AJ9O9jhwX/vhmb0AKyJ9D+C7lb6neQCdHP3F RIgPL0xZnNMVnmRDtwHckrA= =RdcO -----END PGP SIGNATURE----- --nextPart2551595.pF8jQdSoQI--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200711242006.04753.max>