[Haskell-cafe] Shootout favouring C

Sebastian Sylvan sebastian.sylvan at gmail.com
Mon Jan 16 11:01:20 EST 2006


On 1/16/06, Daniel Fischer <daniel.is.fischer at web.de> wrote:
> Hi,
>
> Is it only my machime, or can you confirm that for the Ackermann benchmark,
> it's very good for C that they chose 9 and not a larger value? For 10, we are
> significantly faster and for 11,12,13, we can run rings around the
> C-programme:
> dafis at linux:~/Documents/haskell/shootout> time ./cacker3 10; time ./acker 10;
> time ./cacker3 11; time ./acker 11; time ./cacker3 12; time ./acker 12
> Ack(3,10): 8189
>
> real    0m0.664s
> user    0m0.660s
> sys     0m0.010s
> Ack(3,10): 8189
>
> real    0m0.405s
> user    0m0.400s
> sys     0m0.000s
> Ack(3,11): 16381
>
> real    0m6.255s
> user    0m6.220s
> sys     0m0.000s
> Ack(3,11): 16381
>
> real    0m1.731s
> user    0m1.710s
> sys     0m0.000s
> Ack(3,12): 32765
>
> real    0m35.270s
> user    0m35.050s
> sys     0m0.000s
> Ack(3,12): 32765
>
> real    0m10.673s
> user    0m10.590s
> sys     0m0.000s
> dafis at linux:~/Documents/haskell/shootout> time ./acker 13; time ./cacker3 13
> Ack(3,13): 65533
>
> real    1m4.476s
> user    1m4.050s
> sys     0m0.010s
> Ack(3,13): 65533
>
> real    2m50.645s
> user    2m47.020s
> sys     0m0.020s
>

This is interesting. Hopefully it's not intentional, but it's quite
obvious that for benchmarks where the fastest time is only a few
fractions of a second, languages with more complex runtime systems
will be unfairly slow due to the startup cost. I suspect that e.g.
Java suffers quite a bit from this in the shootout.
There is already a startup benchmark in there (although for some
lightweight langauges I suspect that the cost of writing "hello world"
is larger than the startup, so it's perhaps not optimal) so it would
be good to remove the startup factor in benchmarks which are not meant
to test that.

In other words I'd prefer if all benchmarks are reconfigured to target
an execution time of at least a few seconds for the fastest
benchmarks.

/S
--
Sebastian Sylvan
+46(0)736-818655
UIN: 44640862


More information about the Haskell-Cafe mailing list