cvs commit: src/sys/kern subr_witness.c src/sys/sys _lock.h
lock.h
Andre Oppermann
andre at freebsd.org
Mon Dec 5 14:31:52 PST 2005
John Baldwin wrote:
>
> On Monday 05 December 2005 03:45 pm, John Baldwin wrote:
> > jhb 2005-12-05 20:45:24 UTC
> >
> > FreeBSD src repository
> >
> > Modified files:
> > sys/kern subr_witness.c
> > sys/sys _lock.h lock.h
> > Log:
> > Tweak witness handling of lock object to shave 2 pointers off of each
> > lock object (and thus off of each mutex and sx lock):
> >
> > ...
> >
> > With these changes, struct mtx shrinks from 36 to 28 bytes on 32-bit
> > platforms and from 72 to 56 bytes on 64-bit platforms. Note that this
> > commit will completely and utterly destroy the kernel ABI, so no MFC.
> >
> > Tested on: alpha, amd64, i386, sparc64
>
> andre@ reported a 5% perf increase from this change on at least one network
> benchmark.
I tested only with WITNESS enabled and there it did in fact make a 5%
difference on a HTTP connection performance test over the loopback
interface. It is mostly limited by lock performance and I was measuring
only 33 instructions on average between two lock operations (lock or
unlock).
--
Andre
More information about the cvs-src
mailing list