String Concatenation 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

N is the number of times we concatenate a suffix on a string.


Measurement of CPU as N varies
  N
Test Source 10000 20000 30000 40000
bcc 0.01 0.01 0.02 0.02
lcc 0.01 0.02 0.02 0.02
ocaml 0.01 0.01 0.01 0.02
mingw32 0.01 0.01 0.01 0.02
se 0.01 0.01 0.01 0.02
bigforth 0.01 0.02 0.02 0.02
vc 0.01 0.01 0.02 0.03
delphi 0.01 0.01 0.02 0.03
gcc 0.03 0.03 0.04 0.04
icon 0.03 0.04 0.05 0.07
cygperl 0.05 0.06 0.07 0.08
gforth 0.05 0.06 0.07 0.09
perl 0.05 0.07 0.09 0.10
tcl 0.06 0.07 0.08 0.10
ghc 0.05 0.07 0.09 0.11
csharp 0.10 0.10 0.11 0.11
ocamlb 0.04 0.07 0.09 0.12
php 0.08 0.10 0.13 0.15
smlnj 0.06 0.09 0.15 0.16
pike 0.14 0.15 0.16 0.17
ruby 0.12 0.16 0.20 0.24
python 0.23 0.25 0.28 0.31
oz 0.18 0.21 0.24 0.32
java 0.46 0.47 0.48 0.48
lua 0.13 0.26 0.38 0.52
erlang 0.48 0.50 0.51 0.53
nice 0.54 0.55 0.56 0.57
lua5 0.20 0.38 0.57 0.76
poplisp 0.30 0.53 0.66 1.02
guile 0.55 0.79 1.01 1.23
vc++ 0.33 2.40 6.09 11.23
parrot 2.26 7.54 15.69 25.61
awka 1.18 7.58 19.58 36.86
mawk 0.76 6.79 19.73 38.35
gawk 0.80 6.88 19.99 38.82
fpascal 0.94 7.40 20.37 39.97
slang 0.86 7.99 22.09 41.89
vpascal 2.58 13.10 31.72 57.60
rexx 2.01 14.30 37.91 72.09
jscript 5.26 22.10 51.94 94.07
pliant 5.07 25.52 62.39 113.99
mercury 4.75 22.96 61.00 115.85
vbscript 9.39 45.80 104.83 193.33
ici 11.83 51.43 122.35 222.91
elastic 3.90 T T T
gnat F F F F
Measurement of Memory as N varies
  N
Test Source 10000 20000 30000 40000
bcc 656 716 908 964
lcc 584 632 756 756
ocaml 772 916 1112 1172
mingw32 592 656 784 784
se 752 956 956 1360
bigforth 976 1032 1092 1148
vc 564 632 760 760
delphi 640 700 752 816
gcc 1580 1640 1700 1756
icon 640 700 760 816
cygperl 2436 2492 2552 2612
gforth 1548 1608 1672 1724
perl 1532 1592 1648 1708
tcl 1552 1616 1760 1760
ghc 1476 1508 1532 1560
csharp 3496 3760 4276 4272
ocamlb 380 380 380 380
php 2876 2936 2996 3220
smlnj 936 936 936 936
pike 3608 3672 3804 3804
ruby 1916 1976 2036 2092
python 2472 2516 2640 2640
oz 648 648 648 648
java 4852 5128 5672 5672
lua 836 1060 1304 1432
erlang 5436 5948 6492 6968
nice 5340 5608 6152 6152
lua5 868 1044 1204 1512
poplisp 3524 3660 3716 4380
guile 2828 2948 3128 3188
vc++ 724 992 1200 1268
parrot 2072 2080 2944 2944
awka 2040 2516 2984 3448
mawk 1764 1940 2016 2288
gawk 2216 2400 2504 2680
fpascal 2632 3184 3456 3576
slang 1980 2104 2280 2440
vpascal 704 824 936 1056
rexx 2432 4540 9444 9444
jscript 3460 3996 10124 10124
pliant 3580 3812 4048 4280
mercury 2100 2536 2920 2920
vbscript 4064 5028 17440 17544
ici 1500 1860 2524 3004
elastic 136104 T T T
gnat 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
ocaml 0.01 772 9 log
lcc 0.01 584 26 log
bcc 0.01 656 26 log
mingw32 0.01 592 27 log
bigforth 0.01 976 27 log
delphi 0.01 640 12 log
se 0.01 752 26 log
vc 0.01 564 26 log
icon 0.03 640 6 log
gcc 0.03 1580 27 log
ocamlb 0.04 380 9 log
cygperl 0.05 2436 6 log
perl 0.05 1532 6 log
gforth 0.05 1548 27 log
ghc 0.05 1476 7 log
smlnj 0.06 936 65 log
tcl 0.06 1552 8 log
php 0.08 2876 9 log
csharp 0.10 3496 14 log
ruby 0.12 1916 6 log
lua 0.13 836 32 log
pike 0.14 3608 10 log
oz 0.18 648 15 log
lua5 0.20 868 31 log
python 0.23 2472 8 log
poplisp 0.30 3524 25 log
vc++ 0.33 724 11 log
java 0.46 4852 13 log
erlang 0.48 5436 6 log
nice 0.54 5340 0 log
guile 0.55 2828 28 log
mawk 0.76 1764 7 log
gawk 0.80 2216 7 log
slang 0.86 1980 10 log
fpascal 0.94 2632 15 log
awka 1.18 2040 7 log
rexx 2.01 2432 9 log
parrot 2.26 2072 10 log
vpascal 2.58 704 14 log
elastic 3.90 136104 16 log
mercury 4.75 2100 17 log
pliant 5.07 3580 10 log
jscript 5.26 3460 11 log
vbscript 9.39 4064 6 log
ici 11.83 1500 5 log
gnat F F 0 log


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