www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Benchmark: Ackermann

reply Thomas =?UTF-8?B?S8O8aG5l?= <thomas-dloop kuehne.cn> writes:
Here the results of the Ackermann benchmark. 
It is a synthetic benchmark used to evaluate recursion optimization.

gdc-0.8 -O2 -frename-registers -fomit-frame-pointer -fweb -frelease
-finline-functions3: [dmd -O -release -inline]
        ack(3,11): 16381 (8.640000e+00 seconds) 

icc-8.0 -O3:
        ack(3,11): 16381 (8.980000e+00 seconds)

gcc-3.4.2 -O3:
        ack(3,11): 16381 (1.141000e+01 seconds)

gdc-0.8 -O3 -frelease:
        ack(3,11): 16381 (1.468000e+01 seconds)

dmd-0.106 -O -release -inline:
        ack(3,11): 16381 (2.406000e+01 seconds)

Now this is something. GDC - arguably with lots of flags - beats ICC!

What are the best flags to speed up ICC's results?

http://svn.kuehne.cn/dstress/benchmark/ackermann

Thomas
Nov 09 2004
parent Dave <Dave_member pathlink.com> writes:
In article <cmql9e$sqe$1 digitaldaemon.com>, Thomas =?UTF-8?B?S8O8aG5l?= says...
Here the results of the Ackermann benchmark. 
It is a synthetic benchmark used to evaluate recursion optimization.

gdc-0.8 -O2 -frename-registers -fomit-frame-pointer -fweb -frelease
-finline-functions3: [dmd -O -release -inline]
        ack(3,11): 16381 (8.640000e+00 seconds) 

icc-8.0 -O3:
        ack(3,11): 16381 (8.980000e+00 seconds)

gcc-3.4.2 -O3:
        ack(3,11): 16381 (1.141000e+01 seconds)

gdc-0.8 -O3 -frelease:
        ack(3,11): 16381 (1.468000e+01 seconds)

dmd-0.106 -O -release -inline:
        ack(3,11): 16381 (2.406000e+01 seconds)

Now this is something. GDC - arguably with lots of flags - beats ICC!

What are the best flags to speed up ICC's results?

http://svn.kuehne.cn/dstress/benchmark/ackermann

Thomas

For ICC on a P4 machine, the '-fast' switch (alone) seems to hit most/all of the 'best' optimizations. (For those not aware of this, [configure --prefix]/bin/dmd is a perl script that adds the 'best' GCC optimization switches to the gdc command-line with the standard DMD '-O -inline -release' switches, and is installed by default by GDC v0.8. So that is kind-of equivalent to 'fast' for ICC.) - Dave
Nov 09 2004