Heapsort Back to the Win32 Shootout
Back to dada's perl lab

[The Original Shootout]   [NEWS]   [FAQ]   [Methodology]   [Platform Details]   [Acknowledgements]   [Scorecard]  

Measurements while N varies

The test parameter N is the size of the array of random numbers that we sort.


Measurement of CPU as N varies
  N
Test Source 1000 20000 40000 60000 80000
vc 0.01 0.02 0.05 0.08 0.11
vc++ 0.01 0.02 0.05 0.09 0.11
mingw32 0.01 0.02 0.06 0.09 0.12
gcc 0.03 0.04 0.07 0.10 0.13
lcc 0.01 0.03 0.06 0.10 0.14
delphi 0.01 0.03 0.06 0.10 0.14
ocaml 0.01 0.03 0.07 0.11 0.15
bcc 0.01 0.02 0.07 0.11 0.15
gnat 0.01 0.04 0.11 0.17 0.25
csharp 0.11 0.13 0.17 0.21 0.27
smlnj 0.04 0.09 0.16 0.24 0.32
se 0.01 0.09 0.20 0.32 0.44
java 0.56 0.61 0.66 0.71 0.76
nice 0.63 0.69 0.71 0.75 0.81
mercury 0.03 0.22 0.52 0.82 1.16
pliant 0.31 0.44 0.65 0.94 1.27
gforth 0.05 0.31 0.64 0.98 1.34
vpascal 0.02 0.37 0.87 1.42 2.08
oz 0.18 0.65 1.19 1.85 2.41
ocamlb 0.04 0.61 1.31 2.04 2.79
lua5 0.03 0.69 1.49 2.31 3.19
pike 0.12 0.96 1.96 3.01 4.12
lua 0.03 0.93 1.98 3.05 4.27
ghc 0.04 0.85 1.93 3.11 4.37
awka 0.06 0.96 2.05 3.11 4.40
poplisp 0.10 0.93 2.03 3.42 5.35
python 0.24 1.50 3.00 4.60 6.22
elastic 0.09 1.57 3.40 5.62 7.46
mawk 0.08 1.65 3.58 5.42 7.63
ici 0.09 1.70 3.69 5.75 7.87
cygperl 0.17 2.01 4.19 6.48 8.85
perl 0.15 2.09 4.41 6.81 9.29
guile 0.26 2.87 5.80 9.16 11.81
slang 0.14 3.02 6.44 9.99 13.67
icon 0.10 2.83 6.70 9.66 13.69
jscript 0.26 3.50 7.43 11.57 15.89
php 0.20 4.06 8.62 13.39 18.42
tcl 0.20 4.77 10.46 15.93 22.21
ruby 0.25 5.04 10.71 16.75 22.90
gawk 0.22 5.84 12.49 19.30 26.95
vbscript 0.44 8.23 17.36 26.90 36.70
rexx 0.22 23.41 98.71 244.05 T
fpascal F F F F F
erlang 0.69 T T T T
rebol F F F F F
Measurement of Memory as N varies
  N
Test Source 1000 20000 40000 60000 80000
vc 484 636 792 948 1108
vc++ 524 676 832 988 1148
mingw32 524 660 816 972 1132
gcc 1524 1672 1828 1984 2140
lcc 520 664 820 976 1140
delphi 888 1040 1196 1356 1512
ocaml 664 928 1092 1248 1404
bcc 572 720 876 1036 1192
gnat 756 980 1216 1452 1688
csharp 3476 3632 3792 3952 4104
smlnj 940 940 940 940 940
se 580 728 884 1040 1196
java 5140 5244 5408 5564 5720
nice 5392 5752 5704 5860 6016
mercury 1860 2200 2580 2960 3324
pliant 3228 3632 3676 4060 4060
gforth 1496 1644 1800 1956 2112
vpascal 776 5676 11396 17344 23464
oz 648 648 648 648 648
ocamlb 380 380 380 380 380
lua5 644 1156 1676 1676 2712
pike 3428 3568 3740 3896 4056
lua 668 2540 4464 4464 8312
ghc 1668 4084 6676 8820 12180
awka 1708 3216 4796 6392 7960
poplisp 3540 4624 4780 4936 5096
python 2408 3012 3652 4288 4924
elastic 2004 2608 3852 5872 6384
mawk 1672 2744 3864 5000 6104
ici 1196 3048 4756 8024 8684
cygperl 2808 3904 5052 6224 7552
perl 1924 2928 3976 4828 6068
guile 2660 3360 4284 4360 6212
slang 1852 2172 2568 2960 3352
icon 836 2068 2068 4036 4036
jscript 2348 4132 6376 8184 9984
php 3020 5076 7244 9276 11580
tcl 1592 3592 5628 7856 9896
ruby 1896 2484 3548 3672 5736
gawk 2156 3680 5280 6916 8484
vbscript 2348 2652 2976 3288 3600
rexx 1152 3460 5916 8372 T
fpascal F F F F F
erlang 5264 T T T T
rebol F F F F F

The following graph is similar to the graph on the index page, but here, N is much smaller, and startup costs may be more prominent.





[Note: Values have been normalized to fall in the range of 0-10 for aesthetic reasons. Original value ranges are included on the X-axis.
Source Code CPU (sec) Mem (KB) Lines Code Log
delphi 0.01 888 59 log
bcc 0.01 572 56 log
ocaml 0.01 664 52 log
vc++ 0.01 524 58 log
gnat 0.01 756 0 log
mingw32 0.01 524 56 log
se 0.01 580 75 log
vc 0.01 484 56 log
lcc 0.01 520 56 log
vpascal 0.02 776 94 log
gcc 0.03 1524 56 log
lua5 0.03 644 49 log
lua 0.03 668 49 log
mercury 0.03 1860 72 log
ocamlb 0.04 380 52 log
smlnj 0.04 940 69 log
ghc 0.04 1668 37 log
gforth 0.05 1496 55 log
awka 0.06 1708 43 log
mawk 0.08 1672 43 log
ici 0.09 1196 55 log
elastic 0.09 2004 62 log
icon 0.10 836 48 log
poplisp 0.10 3540 52 log
csharp 0.11 3476 74 log
pike 0.12 3428 47 log
slang 0.14 1852 79 log
perl 0.15 1924 46 log
cygperl 0.17 2808 46 log
oz 0.18 648 77 log
tcl 0.20 1592 61 log
php 0.20 3020 46 log
rexx 0.22 1152 61 log
gawk 0.22 2156 43 log
python 0.24 2408 46 log
ruby 0.25 1896 43 log
guile 0.26 2660 50 log
jscript 0.26 2348 50 log
pliant 0.31 3228 52 log
vbscript 0.44 2348 52 log
java 0.56 5140 54 log
nice 0.63 5392 0 log
erlang 0.69 5264 52 log
rebol F F 66 log
fpascal F F 94 log


Back to the Win32 Shootout
Back to dada's perl lab
Send comments or suggestions to dada@perl.it