Running Phobos unit tests in threads: I have data

safety0ff via Digitalmars-d digitalmars-d at puremagic.com
Sun May 4 10:01:21 PDT 2014


On Saturday, 3 May 2014 at 22:46:03 UTC, Andrei Alexandrescu 
wrote:
> On 5/3/14, 2:42 PM, Atila Neves wrote:
>> gdc gave _very_ different results. I had to use different 
>> modules
>> because at some point tests started failing, but with gdc the 
>> threaded
>> version runs ~3x faster.
>>
>> On my own unit-threaded benchmarks, running the UTs for 
>> Cerealed over
>> and over again was only slightly slower with threads than 
>> without. With
>> dmd the threaded version was nearly 3x slower.
>
> Sounds like a severe bug in dmd or dependents. -- Andrei

This reminds me of when I was parallelizing a project euler 
solution: atomic access was so much slower on DMD that it made 
performance worse than the single threaded version for one stage 
of the program.

I know that std.parallelism does make use of core.atomic under 
the hood, so this may be a factor when using DMD.


More information about the Digitalmars-d mailing list