Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Mar 2011 20:46:37 +0300
From:      Chagin Dmitry <dchagin@freebsd.org>
To:        Alexander Best <arundel@freebsd.org>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: regarding issues with futexes and multiple threads
Message-ID:  <20110304174637.GA8522@dchagin.static.corbina.ru>
In-Reply-To: <20110304110843.GA65337@freebsd.org>
References:  <20110303212051.GA54978@freebsd.org> <20110304061328.GA4073@dchagin.static.corbina.ru> <20110304110843.GA65337@freebsd.org>

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

--BOKacYhQ+x31HxR3
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Mar 04, 2011 at 11:08:43AM +0000, Alexander Best wrote:
> On Fri Mar  4 11, Chagin Dmitry wrote:
> > On Thu, Mar 03, 2011 at 09:20:51PM +0000, Alexander Best wrote:
> > > hi there,
> > >=20
> > > i've been investigating this issue for quite a while now and simply w=
anted to
> > > post some measurements i did.
> > >=20
> > > basically there's a massive slowdown when a process triggers a lot of=
 threads
> > > which are doing futex operations. the following example is from darre=
n hart's
> > > futex test suite (performance/). the slowdown seems to SMP related. h=
ere are
> > > the measurements running with SMP enabled and with kern.smp.disabled=
=3D1:
> > >=20
> >=20
> > 1) slowdown is expected behaviour.
>=20
> even if the slowdown is to be expected, looking at the screenshot with the
> top(1) output it seems obvious that there are issues with the current fut=
ex
> implementation.
>=20

why do you think it's a problem with the futexes?

> > 2) is it possible to run this test suite on FreeBSD?
>=20
> i used emulators/linux_dist-gentoo-stage3 to compile the testsuite and th=
en ran
> it natively under freebsd. if you want to i can send you the file. it's
>=20
> futex_wait: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dyn=
amically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
>=20

ah, tests directly calls sys_futex syscall, so can't be used for umtx/futex=
 comparison :)
It would be great to have the same set of tests to compare the linuxulator =
threads
and the native.

--=20
Have fun!
chd

--BOKacYhQ+x31HxR3
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (FreeBSD)

iEYEARECAAYFAk1xJXwACgkQ0t2Tb3OO/O1S9ACff7qrg5ZZXjV/eZEsQPbg5qdW
YzEAoI2Zgk/MyNnIROTap6wsuqjwcXbO
=agI7
-----END PGP SIGNATURE-----

--BOKacYhQ+x31HxR3--



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