Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 02 Mar 2004 15:18:35 +0800
From:      David Xu <davidxu@freebsd.org>
To:        Peter Grehan <grehan@freebsd.org>
Cc:        freebsd-threads@freebsd.org
Subject:   Re: threads stress test
Message-ID:  <4044354B.3080005@freebsd.org>
In-Reply-To: <40441A7E.7000805@freebsd.org>
References:  <40441A7E.7000805@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Peter Grehan wrote:

> I've been using the ping-pong test program described in:
>
>   http://wwws.sun.com/software/whitepapers/solaris9/multithread.pdf
>
>  to test out Suleiman Souhal's PPC libthr patches.
>
>  I just took out sledge (AMD64) with this when linking against
> libpthread and running with '-v -i 10000'. Not sure if it happens
> on i386, but maybe KSE developers might want to give it a try.

I ran it on an old Celeron 500Mhz (Pentium II class):
-------------------------------------------------
1. Process scope thread (libpthread)
./pp -s process -v
PING-PONG CONFIGURATION:

target (-i) = 1000000
ntables (-n) = 1
sleepms (-z) = 0
pthread_scope (-s) = process
pthread_process (-p) = private
concurrency (-c) = 0
stacksize (-S) = 0

2 threads initialised in 1ms
1 games completed in 9713ms

---------------------------------------------------
2. System scope thread (libpthread)

./pp -s system -v

PING-PONG CONFIGURATION:

target (-i) = 1000000
ntables (-n) = 1
sleepms (-z) = 0
pthread_scope (-s) = system
pthread_process (-p) = private
concurrency (-c) = 0
stacksize (-S) = 0

2 threads initialised in 1ms
1 games completed in 25630ms

-------------------------------------------------
3. With libc_r

./pp_r -v

PING-PONG CONFIGURATION:

target (-i) = 1000000
ntables (-n) = 1
sleepms (-z) = 0
pthread_scope (-s) = process
pthread_process (-p) = private
concurrency (-c) = 0
stacksize (-S) = 0

2 threads initialised in 0ms
1 games completed in 8266ms

-----------------------------------------------
4. With libthr
./ppthr -v

PING-PONG CONFIGURATION:

target (-i) = 1000000
ntables (-n) = 1
sleepms (-z) = 0
pthread_scope (-s) = process
pthread_process (-p) = private
concurrency (-c) = 0
stacksize (-S) = 0

2 threads initialised in 1ms
1 games completed in 88306ms

--------------------------------------------
Interesting article, it seems libc_r is still fastest in the test.  ;-)

>
> Source is at:
>
>   http://www.freebsd.org/~grehan/pp.c
>
>  WRT libthr, ctl-C from the shell doesn't seem to get through when
> running this program (verified on panther/sparc64), although libpthread
> does the right thing.
>
>  Oops, just took out panther when running with libthr after doing
> some libpthread testing. Definitely worth a try !
>
> later,
>
> Peter.
>
> _______________________________________________
> freebsd-threads@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-threads
> To unsubscribe, send any mail to 
> "freebsd-threads-unsubscribe@freebsd.org"
>
>




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