Fine-grained locking for POSIX local sockets (UNIX domain sockets)

Greg 'groggy' Lehey grog at FreeBSD.org
Tue May 9 18:13:11 UTC 2006


On Monday,  8 May 2006 at 21:11:09 -0400, Kris Kennaway wrote:
> On Mon, May 08, 2006 at 08:43:28PM -0400, Kris Kennaway wrote:
>> On Mon, May 08, 2006 at 02:52:07AM -0400, Kris Kennaway wrote:
>>> OK, David's patch fixes the umtx thundering herd (and seems to give a
>>> 4-6% boost).  I also fixed a thundering herd in FILEDESC_UNLOCK (which
>>> was also waking up 2-7 CPUs at once about 30% of the time) by doing
>>> s/wakeup/wakeup_one/.  This did not seem to give a performance impact
>>> on this test though.
>>
>> Turning down kern.hz from 1000 to 100 also made a big difference on 12
>> CPUs (+6.1%).
>>
>> Note also that the system is no less than 40% idle during the runs (at
>> any load), so the bottlenecks are serious.
>
> top -H shows the threads mostly in umtx state.

This doesn't lend much support to the idea that the gettimeofday()
calls are a bottleneck.  I've just been through the code, but if there
are any mutexes acquired there, I missed them.

Greg
--
See complete headers for address and phone numbers
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-performance/attachments/20060509/fead00f8/attachment.pgp


More information about the freebsd-performance mailing list