[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