[MLton-devel] basis library benchmarks
Matthew Fluet
fluet@CS.Cornell.EDU
Tue, 30 Jul 2002 19:48:36 -0400 (EDT)
Here are benchmark results for the new basis. It's relative to the
basis-1997 tag point, which is were I branched basis-2002. It didn't seem
fair to compare with the HEAD branch, since all the generational changes
are already started there.
Anyways, nothing looks too bad, although there is probably room for
improvement. Compile times seem to be up a bit, although that may be due
to the fact that each compiler is built on it's own basis implementation,
so mlton.cvs.basis-2002 will suffer from problems in the basis library.
IN particular, because vector-concat is slow, and strings are now
completely char vectors, then String.concat and String.^ will be a little
slow in the basis-2002 compiler.
I suspect that the reason Vector.concat is slow is because it's completely
bootstrapped from the VectorSlice.concat:
fun concat seqs = Slice.concat (List.map Slice.full seqs)
So, that's an extra list traversal that we don't really need if we
implement concat "natively" for full sequences.
Sizes seem a little high in places, but I haven't looked into them.
MLton0 -- mlton.cvs.basis-1997
MLton1 -- mlton.cvs.basis-2002
compile time
benchmark MLton0 MLton1
barnes-hut 1.8 1.8
boyer 3.9 3.5
checksum 0.4 0.6
count-graphs 1.2 1.4
DLXSimulator 3.3 3.5
fft 0.9 0.9
fib 0.4 0.5
hamlet 38.8 40.6
imp-for 0.4 0.5
knuth-bendix 1.6 1.7
lexgen 4.0 4.4
life 0.9 0.9
logic 2.0 2.1
mandelbrot 0.5 0.6
matrix-multiply 0.5 0.6
merge 0.5 0.5
mlyacc 15.9 16.4
mpuz 0.6 0.7
nucleic 5.1 5.1
peek 0.7 0.8
psdes-random 0.5 0.5
ratio-regions 1.7 1.8
ray 2.6 2.7
raytrace 7.8 7.8
simple 5.1 5.3
smith-normal-form 5.7 6.7
tailfib 0.4 0.5
tak 0.4 0.5
tsp 1.0 1.1
tyan 2.7 2.8
vector-concat 0.5 0.6
vector-rev 0.4 0.5
vliw 8.9 10.2
wc-input1 1.2 1.1
wc-scanStream 1.2 1.2
zebra 4.3 4.4
zern 0.8 0.8
run time
benchmark MLton0 MLton1
barnes-hut 3.1 3.1
boyer 4.4 4.4
checksum 1.6 1.6
count-graphs 2.8 3.0
DLXSimulator 13.2 13.3
fft 8.2 8.2
fib 2.8 2.8
hamlet 7.0 6.5
imp-for 5.8 5.8
knuth-bendix 4.8 4.2
lexgen 8.9 10.6
life 4.3 4.5
logic 16.0 16.1
mandelbrot 5.0 5.0
matrix-multiply 1.8 1.8
merge 45.9 43.0
mlyacc 8.0 8.0
mpuz 3.7 3.8
nucleic 5.0 5.2
peek 0.7 0.7
psdes-random 2.3 2.3
ratio-regions 6.0 6.0
ray 3.0 2.9
raytrace 4.2 4.3
simple 5.1 5.1
smith-normal-form 0.6 0.6
tailfib 9.4 9.4
tak 6.9 6.9
tsp 6.7 6.7
tyan 14.4 13.9
vector-concat 2.1 2.5
vector-rev 3.7 3.7
vliw 5.6 5.5
wc-input1 1.7 1.7
wc-scanStream 2.2 2.2
zebra 1.3 1.3
zern 22.1 22.2
run time ratio
benchmark MLton1
barnes-hut 1.0
boyer 1.0
checksum 1.0
count-graphs 1.1
DLXSimulator 1.0
fft 1.0
fib 1.0
hamlet 0.9
imp-for 1.0
knuth-bendix 0.9
lexgen 1.2
life 1.0
logic 1.0
mandelbrot 1.0
matrix-multiply 1.0
merge 0.9
mlyacc 1.0
mpuz 1.0
nucleic 1.1
peek 1.0
psdes-random 1.0
ratio-regions 1.0
ray 1.0
raytrace 1.0
simple 1.0
smith-normal-form 1.0
tailfib 1.0
tak 1.0
tsp 1.0
tyan 1.0
vector-concat 1.2
vector-rev 1.0
vliw 1.0
wc-input1 1.0
wc-scanStream 1.0
zebra 1.0
zern 1.0
size
benchmark MLton0 MLton1
barnes-hut 62,752 63,904
boyer 124,842 120,618
checksum 31,498 33,810
count-graphs 51,010 54,258
DLXSimulator 93,661 99,357
fft 40,542 40,878
fib 31,498 33,842
hamlet 1,090,075 1,148,635
imp-for 31,514 33,938
knuth-bendix 71,107 72,035
lexgen 152,712 151,096
life 47,546 47,778
logic 88,034 90,226
mandelbrot 31,602 34,018
matrix-multiply 32,066 34,378
merge 32,714 35,114
mlyacc 462,728 463,992
mpuz 35,498 38,226
nucleic 70,242 72,506
peek 39,163 40,323
psdes-random 32,546 34,786
ratio-regions 49,874 51,850
ray 88,699 92,587
raytrace 238,168 239,400
simple 184,550 184,998
smith-normal-form 140,796 142,700
tailfib 31,226 33,618
tak 31,666 33,978
tsp 45,619 46,779
tyan 89,307 89,435
vector-concat 32,010 34,890
vector-rev 31,890 34,146
vliw 294,868 304,484
wc-input1 54,416 54,064
wc-scanStream 55,128 54,752
zebra 116,843 117,491
zern 38,085 37,669
-------------------------------------------------------
This sf.net email is sponsored by: Dice - The leading online job board
for high-tech professionals. Search and apply for tech jobs today!
http://seeker.dice.com/seeker.epl?rel_code=31
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel