[MLton-devel] -inline-array
Matthew Fluet
fluet@CS.Cornell.EDU
Thu, 11 Jul 2002 13:19:37 -0400 (EDT)
Here are the results of running through the benchmarks with the checked in
sources (i.e., not using the mark compact GC, but using all the supporting
changes), with the different -inline-array options. No major slowdowns,
and in a couple of cases, a minor speedup. Code-sizes are as expected:
slightly smaller with the shared array initialization code.
MLton0 -- mlton-stable -native true -inline-array true
MLton1 -- mlton-stable -native true -inline-array false
MLton2 -- mlton-stable -native false -inline-array true
MLton3 -- mlton-stable -native false -inline-array false
compile time
benchmark MLton0 MLton1 MLton2 MLton3
barnes-hut 1.8 1.7 4.3 4.2
boyer 3.9 4.0 24.2 24.1
checksum 0.4 0.5 0.5 0.5
count-graphs 1.2 1.2 3.7 3.4
DLXSimulator 3.2 3.1 9.9 9.9
fft 0.9 0.9 1.6 1.5
fib 0.4 0.5 0.5 0.5
hamlet 38.3 38.2 211.9 213.9
imp-for 0.4 0.4 0.5 0.5
knuth-bendix 1.5 1.6 8.0 7.8
lexgen 4.3 4.3 22.7 22.4
life 0.9 0.9 2.8 2.7
logic 2.1 2.0 13.3 13.4
mandelbrot 0.4 0.5 0.5 0.5
matrix-multiply 0.5 0.5 0.6 0.5
md5 0.8 0.8 1.9 1.8
merge 0.4 0.4 0.6 0.6
mlyacc 16.0 15.8 110.2 103.2
mpuz 0.6 0.6 0.9 0.8
nucleic 5.0 5.0 4.8 4.8
peek 0.7 0.7 1.3 1.3
psdes-random 0.5 0.5 0.6 0.6
ratio-regions 1.7 1.7 5.5 5.1
ray 2.6 2.5 9.7 9.7
raytrace 7.6 7.5 35.0 32.6
simple 5.1 5.1 34.8 31.1
smith-normal-form 5.6 5.7 55.7 56.1
tailfib 0.4 0.4 0.5 0.5
tak 0.4 0.4 0.5 0.5
tensor 2.3 2.2 5.5 5.3
tsp 1.0 1.0 2.3 2.2
tyan 2.8 2.8 11.0 11.3
vector-concat 0.5 0.4 0.5 0.6
vector-rev 0.5 0.5 0.5 0.5
vliw 8.9 8.9 51.3 49.2
wc-input1 1.2 1.2 3.9 3.6
wc-scanStream 1.2 1.1 4.0 3.7
zebra 4.5 4.5 21.3 21.2
zern 0.8 0.8 1.4 1.2
run time
benchmark MLton0 MLton1 MLton2 MLton3
barnes-hut 3.1 3.2 5.6 5.6
boyer 3.9 3.8 4.8 4.7
checksum 1.6 1.6 17.7 17.3
count-graphs 2.8 2.8 8.0 7.9
DLXSimulator 11.2 11.2 13.7 14.8
fft 7.7 7.7 10.3 10.4
fib 2.8 2.8 11.6 11.6
hamlet 7.2 7.0 14.4 14.0
imp-for 5.8 5.8 89.6 89.6
knuth-bendix 4.6 4.6 7.5 7.6
lexgen 8.4 8.9 28.2 33.0
life 4.6 4.6 13.6 13.6
logic 16.1 16.1 19.9 19.8
mandelbrot 5.0 5.0 25.3 25.3
matrix-multiply 1.9 1.9 7.5 7.4
md5 1.5 1.6 6.8 7.0
merge 42.3 43.1 56.2 56.9
mlyacc 7.9 8.0 15.0 15.0
mpuz 3.7 3.7 21.9 21.9
nucleic 5.0 4.9 6.4 6.3
peek 0.8 0.8 15.6 15.6
psdes-random 2.3 2.3 9.9 9.9
ratio-regions 6.0 5.9 21.7 21.8
ray 3.1 3.1 5.5 5.2
raytrace 4.2 4.2 7.1 7.0
simple 5.0 5.0 15.7 15.6
smith-normal-form 0.6 0.6 0.6 0.6
tailfib 9.4 9.4 139.6 139.6
tak 6.9 6.9 20.4 20.4
tensor 2.7 2.7 63.3 63.7
tsp 6.8 6.8 7.8 7.8
tyan 14.4 13.9 22.8 21.9
vector-concat 2.1 2.1 38.1 38.1
vector-rev 3.7 3.7 23.2 23.1
vliw 5.1 5.2 10.4 10.6
wc-input1 1.6 1.6 7.9 8.2
wc-scanStream 1.6 2.0 6.7 8.4
zebra 1.3 1.3 3.1 3.1
zern 23.4 23.4 97.6 97.0
run time ratio
benchmark MLton1 MLton2 MLton3
barnes-hut 1.0 1.8 1.8
boyer 1.0 1.2 1.2
checksum 1.0 10.8 10.6
count-graphs 1.0 2.8 2.8
DLXSimulator 1.0 1.2 1.3
fft 1.0 1.3 1.3
fib 1.0 4.2 4.2
hamlet 1.0 2.0 2.0
imp-for 1.0 15.5 15.5
knuth-bendix 1.0 1.6 1.6
lexgen 1.1 3.3 3.9
life 1.0 3.0 2.9
logic 1.0 1.2 1.2
mandelbrot 1.0 5.1 5.1
matrix-multiply 1.0 4.0 4.0
md5 1.0 4.4 4.5
merge 1.0 1.3 1.3
mlyacc 1.0 1.9 1.9
mpuz 1.0 5.9 5.8
nucleic 1.0 1.3 1.3
peek 1.0 19.5 19.5
psdes-random 1.0 4.2 4.2
ratio-regions 1.0 3.6 3.7
ray 1.0 1.8 1.7
raytrace 1.0 1.7 1.7
simple 1.0 3.1 3.1
smith-normal-form 1.0 1.1 1.1
tailfib 1.0 14.9 14.9
tak 1.0 3.0 3.0
tensor 1.0 23.4 23.5
tsp 1.0 1.1 1.1
tyan 1.0 1.6 1.5
vector-concat 1.0 18.4 18.4
vector-rev 1.0 6.2 6.2
vliw 1.0 2.0 2.1
wc-input1 1.0 5.0 5.2
wc-scanStream 1.2 4.1 5.1
zebra 1.0 2.3 2.3
zern 1.0 4.2 4.1
size
benchmark MLton0 MLton1 MLton2 MLton3
barnes-hut 61,163 60,531 79,535 78,119
boyer 122,109 122,109 198,117 198,117
checksum 28,701 28,637 29,677 29,613
count-graphs 49,765 48,341 67,213 64,301
DLXSimulator 92,736 91,056 131,952 129,296
fft 38,601 37,905 46,013 44,981
fib 28,669 28,669 29,789 29,789
hamlet 1,091,262 1,088,302 1,987,894 1,975,958
imp-for 28,685 28,685 29,621 29,621
knuth-bendix 69,246 68,502 109,046 107,702
lexgen 153,755 150,491 262,723 245,755
life 45,141 44,781 59,229 58,621
logic 85,237 85,237 119,485 119,485
mandelbrot 28,741 28,741 29,421 29,421
matrix-multiply 29,333 29,205 30,469 30,309
md5 38,206 37,494 49,310 47,998
merge 29,853 29,853 31,813 31,813
mlyacc 466,155 460,635 789,875 778,347
mpuz 33,173 32,701 37,261 36,637
nucleic 67,573 67,573 71,353 71,353
peek 37,222 36,462 44,030 42,846
psdes-random 30,077 29,749 32,053 31,221
ratio-regions 48,197 47,141 73,573 71,365
ray 89,006 86,318 130,694 129,206
raytrace 241,691 236,427 332,723 321,595
simple 182,825 181,977 362,053 369,981
smith-normal-form 139,207 138,191 239,399 235,783
tailfib 28,365 28,365 29,173 29,173
tak 28,805 28,805 29,853 29,853
tensor 59,878 59,174 77,246 76,022
tsp 43,510 42,950 53,404 52,348
tyan 88,830 86,798 142,126 138,550
vector-concat 29,533 29,181 31,221 30,549
vector-rev 29,477 29,061 30,757 30,021
vliw 297,239 294,311 529,135 523,527
wc-input1 53,963 51,875 72,555 69,515
wc-scanStream 54,795 52,651 73,987 70,779
zebra 114,462 114,110 174,990 174,318
zern 36,176 35,320 42,516 40,972
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
PC Mods, Computing goodies, cases & more
http://thinkgeek.com/sf
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel