Dhrystone speed dmd vs gdc

Dave Dave_member at pathlink.com
Sun Feb 25 09:03:49 PST 2007


downs wrote:
> Dave Wrote:
> 
>> downs wrote:
>>> I just ran the samples/dhry.d compiled with DMD 1.007 vs GDC .23 svn on gcc 4.1.1 using MinGW, on a Pentium M with 1.6g.
>>> The used flags were -O -release -inline for DMD and -ffast-math -O3 -frelease -finline-functions for GDC.
>>> The observed VAX MIPS ratings were 3280 for GDC, but only 2570 for DMD.
>>> (Note that the GDC rating could be increased to 3480 by adding -msse -mfpmath=sse,387, but that is somewhat risky).
>>> All tests were run with realtime priority.
>>> Do you think this difference in a synthetic benchmark translates into an actual speed difference for real-world applications?
>>> Did I miss any DMD compiler flags?
>>> Greetings   --downs
>> The DMD version maybe using a higher resolution timer -- GetTickCount() vs time() for the GDC 
>> version. If so, that may have a lot to do with it.
>>
>> On a P4 linux box, if I use an external timer ('time'), DMD consistently outperforms GDC with the 
>> switches above by about 15% or so.
> I tried the same thing.
> 18,219s for GDC vs 22,422s for DMD. So the difference seems less, but it's still there.

Hmmm - maybe something to do with MinGW / Pentium M?

Also I have GCC v4.0.3, gdc 0.21 installed but I don't think it would make that big of diff (not a 
complete reversal of the results anyway)??

Here's what I get:

# dmd -O -inline -release dhry -ofdhry_dmd; for x in 1 2 3; do time dhry_dmd >/dev/null; done
gcc dhry.o -o dhry_dmd -m32 -lphobos -lpthread -lm

real    0m2.221s
user    0m2.200s
sys     0m0.008s

real    0m2.421s
user    0m2.408s
sys     0m0.004s

real    0m2.299s
user    0m2.288s
sys     0m0.000s

# gdc -ffast-math -O3 -frelease -finline-functions -msse -mfpmath=sse dhry.d -o dhry_gdc; for x in 1 
2 3; do time dhry_gdc >/dev/null; done

real    0m2.827s
user    0m2.816s
sys     0m0.004s

real    0m2.827s
user    0m2.812s
sys     0m0.004s

real    0m2.802s
user    0m2.788s
sys     0m0.000s

I'll see about upgrading gdc (something I've been meaning to do anyhow) and check it out...



More information about the Digitalmars-d mailing list