Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Nov 2007 00:50:42 +0100
From:      Max Laier <max@love2party.net>
To:        freebsd-stable@freebsd.org
Cc:        Attilio Rao <attilio@freebsd.org>, Kris Kennaway <kris@freebsd.org>, Alexey Popov <lol@chistydom.ru>
Subject:   Re: 2 x quad-core system is slower that 2 x dual core on FreeBSD
Message-ID:  <200711220050.51408.max@love2party.net>
In-Reply-To: <4743629B.9090408@FreeBSD.org>
References:  <4741905E.8050300@chistydom.ru> <474339E9.4080301@FreeBSD.org> <4743629B.9090408@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1663567.M1vWNXAkZY
Content-Type: text/plain;
  charset="iso-8859-6"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Tuesday 20 November 2007, Kris Kennaway wrote:
> Kris Kennaway 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.
> >
> > Set the vfs.lookup_shared=3D1 sysctl to enable the other half of the
> > patch.
> >
> > Kris
>
> Try this one instead, it applies to HEAD.  You'll need to manually
> enter the paths though because of how p4 mangles diffs.

I rolled a tiny, simple, possibly braindamaged benchmark (but then again=20
php code tends to be braindamaged): test.php includes 1000 different,=20
essential empty files and is strated over and over from a shell script=20
which counts the runs completed within 60seconds.  1-8,128 scripts are=20
started in parallel.

On a 2x dual Opteron running amd64 I get:

stock RELENG_7 w/o patch ULE:
jobs  sum runs   gain
  1       617    1
  2       784    1.27
  3       939    1.52
  4      1015    1.65
  5       658    1.07
  6       642    1.04
  7       666    1.08
  8       696    1.13
128       726    1.18

RELENG_7 patched ULE vfs.lookup_shared=3D1:
jobs  sum runs   gain
  1       637    1
  2       784    1.23
  3       973    1.53
  4      1104    1.73
  5       708    1.11
  6       733    1.15
  7       776    1.22
  8       840    1.32
128       936    1.47

So there is still a lot of room for improvement here.  I'll rebuild with=20
lock profiling tomorrow and see what I can gather.  Anything you'd like=20
to see in particular?

=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

--nextPart1663567.M1vWNXAkZY
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)

iD8DBQBHRMRbXyyEoT62BG0RAnQOAJ9a3antCCJXeVi0kWWOR3nsrru2+ACfaz3T
0eED8jBN1DCMR2OqjtBOqzs=
=y37s
-----END PGP SIGNATURE-----

--nextPart1663567.M1vWNXAkZY--



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