[MLton-devel] nucleic benchmark times

Stephen Weeks MLton@mlton.org
Fri, 15 Nov 2002 14:47:31 -0800


> I don't think that putting in overflow tests in C compiled code is as cost
> free (runtime) as you think.

We have some very good numbers now as a comparison.  I called them B
and C.  In Matthew's mails, they appeared as MLton5 and MLton6.  B
(MLton5) causes gcc to use addl + jo, while C (MLton6) let's gcc do
whatever it wants.  To repeat some of his latest numbers

MLton5 -- mlton.cvs.HEAD -native false -cc /home/fluet/gcc/install/bin/gcc
-ccopt -mcpu=i686 -ccopt -O2 -ccopt -fno-strict-aliasing -detect-overflow
true -DFAST_INT
MLton6 -- mlton.cvs.HEAD -native false -cc /home/fluet/gcc/install/bin/gcc
-ccopt -mcpu=i686 -ccopt -O2 -ccopt -fno-strict-aliasing -detect-overflow
false

run time ratio
benchmark            MLton5 MLton6
barnes-hut             1.09   0.77
boyer                  1.08   1.16
checksum               0.88   0.61
count-graphs           1.39   1.34
DLXSimulator           1.08   1.04
fft                    1.02   1.01
fib                    1.29   1.26
hamlet                 1.33   1.31
imp-for                1.19   0.88
knuth-bendix           1.31   1.34
lexgen                 1.24   1.24
life                   1.25   1.30
logic                  1.10   1.09
mandelbrot             1.01   1.03
matrix-multiply        0.93   0.89
md5                    2.07   1.99
merge                  1.10   1.08
mlyacc                 1.21   1.17
model-elimination      1.24   1.15
mpuz                   1.11   1.09
nucleic                1.07   1.04
peek                   1.25   0.63
psdes-random           1.11   0.97
ratio-regions          1.12   1.09
ray                    1.29   1.22
raytrace               1.13   1.21
simple                 1.49   1.46
smith-normal-form      1.01   1.00
tailfib                1.26   0.77
tak                    1.12   1.11
tensor                 1.40   0.46
tsp                    1.05   1.07
tyan                   1.11   1.13
vector-concat          1.05   0.92
vector-rev             0.99   0.95
vliw                      *   1.27
wc-input1              1.60   1.41
wc-scanStream          1.41   1.30
zebra                  1.14   1.13
zern                   1.09   1.05

This doesn't separate out how much of the cost is from being forced to
use add (instead of lea or whatever) and how much is from the having
to do the overflow test.  But the point is, the cost isn't often bad.


-------------------------------------------------------
This sf.net email is sponsored by: To learn the basics of securing 
your web site with SSL, click here to get a FREE TRIAL of a Thawte 
Server Certificate: http://www.gothawte.com/rd524.html
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel