[Shootout-list] process creation & message passing chain

skaller skaller@users.sourceforge.net
08 Nov 2004 12:39:19 +1100


On Mon, 2004-11-08 at 02:44, Isaac Gouy wrote:
---->
For the chain test, maybe use parameters like
N = 200 350 500   M = 1

For the chainmsg test, maybe use parameters like
N = 500 M = 25000 50000 75000

and see what the timings are like.
<------

Executive summary:

Posix threads are so slow, 
none of the numbers for M are reasonable for 
systems using them. You'll get tests running 
for many hours.

I suggest some smaller numbers so these systems can
be shown to actually run correctly, and to get some
idea how fast they are, and to compare them.

M = 10 100 1000 5000 10000 25000 50000 75000

may be more useful for that. It may also be worth
actually scaling the sequence like:

M = 2 4 8 16 32 64 ..

to get some idea of the O(?) performance 
from the graph. (perhaps with a different factor than 2 ..)

It may be useful for the shootout graph to display
the logarithm of the times instead of the times,
otherwise the slow systems will flatline the faster ones.


Some data:
-------------------------------------------------------

OK, for Felix:

[skaller@pelican] /mnt/user2/work/flx>time bin/flx_run ./thr.so 500
75000
500 threads
75000 messages
37500000

real    0m3.218s
user    0m3.050s
sys     0m0.010s

and for Ocaml using Posix threads:

[skaller@pelican] ~>time ./evt 250 750
Thread count 250
Message count 750
188250

real    0m14.128s
user    0m4.750s
sys     0m1.050s

[skaller@pelican] ~>time ./evt 250 7500
Thread count 250
Message count 7500
1882500
                                                                                
real    2m29.733s
user    0m37.650s
sys     0m7.120s

Ocaml version with VM threads only:

[skaller@pelican] ~>ocamlc -vmthread -o evtv threads.cma evt.ml
[skaller@pelican] ~>
[skaller@pelican] ~>time ./evtv 250 7500
Thread count 250
Message count 7500
1882500
 
real    1m21.644s
user    1m21.220s
sys     0m0.040s


-- 
John Skaller, mailto:skaller@users.sf.net
voice: 061-2-9660-0850, 
snail: PO BOX 401 Glebe NSW 2037 Australia
Checkout the Felix programming language http://felix.sf.net