Re: Scalability in std.parallelism

2014-02-25 Thread Russel Winder
On Tue, 2014-02-25 at 12:33 +, thedeemon wrote: > On Monday, 24 February 2014 at 14:34:14 UTC, Russel Winder wrote: > > > Two cores with hyperthreads generally means a maximum speed up > > of 2 with optimized native code. > > Not true. If the code is not trivial and the threads are not > do

Re: Scalability in std.parallelism

2014-02-25 Thread thedeemon
On Monday, 24 February 2014 at 14:34:14 UTC, Russel Winder wrote: Two cores with hyperthreads generally means a maximum speed up of 2 with optimized native code. Not true. If the code is not trivial and the threads are not doing exactly same instructions (i.e. they can do some search where n

Re: Scalability in std.parallelism

2014-02-24 Thread Russel Winder
On Sun, 2014-02-23 at 22:55 -0800, Ali Çehreli wrote: […] > On my quad-core Intel I get the following (I have two actual cores, four > hyperthreads): > > 3.14159 took 441[ms] > 3.14159 took 878[ms] > Speedup 1.99093 > -5.80829e+09 took 98[ms] > -5.80829e+09 took 328[ms] > Speedup 3.34694 > > I a

Re: Scalability in std.parallelism

2014-02-24 Thread Russel Winder
On Sat, 2014-02-22 at 16:21 +, "Nordlöw" wrote: > In the following test code given below of std.parallelism I get > some interesting results: > > when compiled as > > dmd -release -noboundscheck -O -inline -w -wi -wi > ~/Work/justd/t_parallelism.d -oft_parallelism > > My scalability measu

Re: Scalability in std.parallelism

2014-02-24 Thread safety0ff
On Saturday, 22 February 2014 at 16:21:21 UTC, Nordlöw wrote: In the following test code given below of std.parallelism I get some interesting results: Don't forget that "n.iota.map" is returning a lazily evaluated range. Std.parallelism might have to convert the lazy range to a random access

Re: Scalability in std.parallelism

2014-02-24 Thread Per Nordlöw
I am not an expect at all but it looks like the first test cannot take advantage of hyperthreading but the second one can to some degree. Yes, that is my hypothesis aswell :) Thx

Re: Scalability in std.parallelism

2014-02-24 Thread Stanislav Blinov
Don't rely on dmd when making raw performance tests. On my machine (i3-2100, two cores): dmd2 -O -release -inline 3.14159 took 368[ms] 3.14159 took 713[ms] Speedup 1.9375 -5.80829e+09 took 61[ms] -5.80829e+09 took 201[ms] Speedup 3.29508 ldc2 -O3 -release 3.14159 took 360[ms] 3.14159 took 718

Re: Scalability in std.parallelism

2014-02-23 Thread Ali Çehreli
On 02/22/2014 08:21 AM, "Nordlöw" wrote: > In the following test code given below of std.parallelism I get some > interesting results: > > when compiled as > > dmd -release -noboundscheck -O -inline -w -wi -wi > ~/Work/justd/t_parallelism.d -oft_parallelism > > My scalability measures says the fo