Date: Thu, 28 Aug 2003 07:23:35 +0800 From: David Xu <davidxu@FreeBSD.org> To: deischen@FreeBSD.org, Daniel Eischen <eischen@vigrid.com>, threads@FreeBSD.org Cc: Scott Long <scottl@FreeBSD.org> Subject: Re: Call for thread testers Message-ID: <200308280723.35697.davidxu@FreeBSD.org> In-Reply-To: <Pine.GSO.4.10.10308271751230.20578-100000@pcnet5.pcnet.com> References: <Pine.GSO.4.10.10308271751230.20578-100000@pcnet5.pcnet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 28 August 2003 06:07, Daniel Eischen wrote: > [ redirected to @threads ] > > David and I have a couple of other tests which we use to > > measure performance of our threads libraries. > > One of these tests is crew, which is part of Dave Butenhof's > threads tests (http://people.freebsd.org/~davidxu/crew/programs.tar.z) > > Usage: crew <string> <directory> > > crew searches recursively for the given string in the directory. > David and I use it as follows: > > $ crew node /usr/src/sys > > By default, it creates 4 worker threads to seach for the string. > Here are the results for all thread libraries; they are somewhat > surprising. The test was run a couple of times to fill up cache > and those timing results were omitted. > > Run 1 Run 2 Run 3 > ------------------------------------------------------ > libc_r real 0m48.451s 0m48.835s 0m50.905s > user 0m2.694s 0m2.745s 0m2.818s > sys 0m8.996s 0m8.931s 0m8.863s > ------------------------------------------------------ > libthr real 1m2.553s 1m52.579s 1m50.306s > user 0m3.423s 0m4.561s 0m4.397s > sys 0m11.842s 0m27.099s 0m27.300s > ------------------------------------------------------ > libkse(M:N) real 0m49.175s 0m49.910s 0m51.033s > user 0m2.840s 0m2.836s 0m2.880s > sys 0m8.857s 0m8.857s 0m8.792s > ------------------------------------------------------ > libkse(1:1) real 0m20.240s 0m19.969s 0m19.981s > user 0m2.741s 0m2.783s 0m2.858s > sys 0m8.877s 0m8.832s 0m8.768s > ------------------------------------------------------ > > All the above tests were run on a single CPU 850MHz PIII > with 256MB RAM (Dell Lattitude C400). > > There seems to be something wrong with libthr; the times > vary too much (by almost 100%). libkse in M:N mode seems > to be on par with libc_r. But the real surprise is libkse > built in 1:1 mode (add -DSYSTEM_SCOPE_ONLY to CFLAGS when > building libpthread). Er, strange result, libkse M:N and libkse 1:1 should be identical in this test, I had always run this test, and their performance are always close enough, but 1:1 was always a bit slow than M:N, all tests are done under 4BSD scheduler, under ULE scheduler, SA process has performance problem, M:N is slower under ULE than 1:1. David Xu
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200308280723.35697.davidxu>