2 x quad-core system is slower that 2 x dual core on FreeBSD
kris at FreeBSD.org
Thu Nov 22 12:25:18 PST 2007
Alexey Popov wrote:
> Kris Kennaway wrote:
>>>> In the meantime there is unfortunately not a lot that can be done,
>>>> AFAICT. There is one hack that I will send you later but it is not
>>>> likely to help much. I will also think about how to track down the
>>>> cause of the contention further (the profiling trace only shows that
>>>> it comes mostly from vget/vput but doesn't show where these are
>>>> called from).
>>> Actually this patch might help. It doesn't replace lockmgr but it
>>> does fix a silly thundering herd behaviour. It probably needs some
>>> adjustment to get it to apply cleanly (it is about 7 months old), and
>>> I apparently stopped using it because I ran into deadlocks. It might
>>> be stable enough to at least see how much it helps.
>> Try this one instead, it applies to HEAD. You'll need to manually
>> enter the paths though because of how p4 mangles diffs.
> Finally I tried your patch and it seems to help a little.
> Now FreeBSD 7-STABLE ULE 8-core server without optimized PHP
> realpath_cache_size (producing 2000+ lstats per request) can handle up
> to ~24 rps as opposed to max. 17 rps without your patch. %sys never
> grows over %user with your patch. On the server with optimized
> realpath_cache_size there's no visible influence of your patch.
You said "20" before for this configuration, so I'm a bit suspicious
about how seriously to treat your measurements :)
Anyway, please obtain another lock profiling trace using the same
conditions as the previous one (same workload & duration, etc), so we
can compare what changed.
More information about the freebsd-stable