Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Nov 2007 14:46:26 +0300
From:      Alexey Popov <lol@chistydom.ru>
To:        Kris Kennaway <kris@FreeBSD.org>
Cc:        Attilio Rao <attilio@freebsd.org>, freebsd-stable@freebsd.org
Subject:   Re: 2 x quad-core system is slower that 2 x dual core on FreeBSD
Message-ID:  <4746BD92.6000204@chistydom.ru>
In-Reply-To: <4746B21F.7050906@FreeBSD.org>
References:  <4741905E.8050300@chistydom.ru>	<fhs3s5$knj$1@ger.gmane.org>	<47419AB3.5030008@chistydom.ru>	<fhs7hp$2es$2@ger.gmane.org> <4741A7DA.2050706@chistydom.ru> <4741DA15.9000308@FreeBSD.org> <47429DB8.7040504@chistydom.ru> <4742ADFE.40902@FreeBSD.org> <4742C46A.1060701@chistydom.ru> <47432F77.3030606@FreeBSD.org> <474339E9.4080301@FreeBSD.org> <4743629B.9090408@FreeBSD.org> <47456B71.5040205@chistydom.ru> <4745E5B3.6060200@FreeBSD.org> <47468165.5010906@chistydom.ru> <4746B21F.7050906@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi

Kris Kennaway wrote:
>>>> 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 :)
>> Sorry, my mistake. s/ULE/4BSD.
> OK, please compare ULE to ULE with and without my patch (and remembering 
> to enable the sysctl), and obtain lock profiling traces in both cases 
> under identical workloads & durations.  That is what I need to proceed 
> with this issue.
I didn't measured the exact values of requests per second on ULE with 
patch and without patch, but at first glance the benefits of the patch 
are similiar to 4BSD. If you need this values, I'll obtain them.

Here you can find lock profiling results for 7-BETA3 GENERIC kernel with 
SCHED_ULE running optimized PHP and unoptimized, with your patch and 
without it: http://83.167.98.162/gprof/lockmgr/

This data was collected by th following script:
(sysctl debug.lock.prof.reset=1
sysctl debug.lock.prof.enable=1
sleep 60
sysctl debug.lock.prof.enable=0
sysctl debug.lock.prof.stats
top -d 2 -b | tail -25)

AFAIU there's still high contention on "lockbuilder mtxpool" with patch 
applied. But hopefully "lockmgr:ufs" contention which i believe produced 
80%sysCPU load is gone with your patch.

>> Also I tried to find what else is slow in FreeBSD, I tried hwpmc as 
>> module and in kernel, but it fails with error:
>> pmc: Unknown Intel CPU.
> There are patches you need to enable it on woodcrest.  They are in my p4 
> branch (kris-contention) but I don't have time right now to extract them.
I think it would be very useful because I can't see any other ways to 
profile FreeBSD on the modern many-cores machines.

With best regards,
Alexey Popov



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4746BD92.6000204>