[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Texmacs-dev] First results on Schemes, Lisps & others
From: |
David MENTRE |
Subject: |
[Texmacs-dev] First results on Schemes, Lisps & others |
Date: |
Sat, 22 May 2004 20:27:47 +0200 |
User-agent: |
Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux) |
Hello,
I have redone most of Doug Bagley's Language Shootout on Schemes, Lisps
and other languages (python as a well known reference, gcc and g++ for
max speed reference, ocaml because it is fast and I like it :-).
Unfortunalty, I haven't be able to redo memory footprint results, so the
result is partial (memory footprint can be important for cache
behavior).
Doug's benches are interesting because there are both compute intensive
ones (sieve, matrix, moments, ...) and string manipulation ones
(spellcheck, wc, wordfred, ...).
All the scripts & results are available at:
http://www.linux-france.org/~dmentre/texmacs/scheme/scheme-shoot.tar.gz
At first glance:
- python and guile are very slow, guile being very very very slow (Oh
surprise! ;)
- cmucl (common lisp) and bigloo (scheme) are close to each other and
are both very fast. Both of them are compiled and I don't know how
they can be used and their speed in interpreter mode;
- regarding interpreters, OCaml in bytecode (ocamlb) is the better, but
it is not a Lisp-like language;
- of course gcc and g++ are the faster.
I have not investigated other Joris' criteria (licence, capabilities,
...).
If you have any comments (suggestion of Scheme to bench, specific bench
case, critics, ...), I'll gladly accept them.
You can play with Doug's results on his page:
http://www.bagley.org/~doug/shootout/craps.shtml
I include below the raw results:
Hello World
Measurement of CPU as N varies
1 50 100 150 200
gcc 0.00 0.04 0.06 0.10 0.13
ocaml 0.00 0.05 0.10 0.15 0.20
ocamlb 0.00 0.12 0.24 0.35 0.48
bigloo 0.00 0.12 0.24 0.37 0.48
g++ 0.00 0.13 0.27 0.40 0.53
cmucl 0.01 0.75 1.49 2.25 3.00
python 0.02 0.97 1.94 2.91 3.88
guile 0.02 1.37 2.72 4.07 5.42
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.1 which plots 56 ticks
Hello World
Summary [N = 1 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
cmucl 0.01 0
python 0.02 0
guile 0.02 0
Hello World
Summary [N = 200 (max)]
Program CPU seconds Memory KB
gcc 0.13 0
ocaml 0.20 0
bigloo 0.48 0
ocamlb 0.48 0
g++ 0.53 0
cmucl 3.00 0
python 3.88 0
guile 5.42 0
Ackermann's Function
Measurement of CPU as N varies
4 5 6 7 8
g++ 0.00 0.00 0.00 0.00 0.01
ocaml 0.00 0.00 0.00 0.00 0.01
gcc 0.00 0.00 0.00 0.00 0.01
cmucl 0.02 0.02 0.01 0.02 0.04
bigloo 0.00 0.00 0.00 0.01 0.05
ocamlb 0.00 0.01 0.01 0.07 0.28
guile 0.04 0.06 0.19 0.68 2.92
python 0.02 0.04 0.14 0.60 3.27
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.05 which plots 67 ticks
Ackermann's Function
Summary [N = 4 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
python 0.02 0
cmucl 0.02 0
guile 0.04 0
Ackermann's Function
Summary [N = 8 (max)]
Program CPU seconds Memory KB
gcc 0.01 0
ocaml 0.01 0
g++ 0.01 0
cmucl 0.04 0
bigloo 0.05 0
ocamlb 0.28 0
guile 2.92 0
python 3.27 0
Array Access III
Measurement of CPU as N varies
1000 3000 5000 7000
g++ 0.00 0.00 0.01 0.01
ocaml 0.00 0.00 0.01 0.01
gcc 0.00 0.00 0.00 0.01
bigloo 0.00 0.01 0.01 0.01
cmucl 0.02 0.04 0.06 0.08
ocamlb 0.17 0.51 0.85 1.20
python 0.45 1.34 2.22 3.10
guile 1.14 3.39 5.65 7.88
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.1 which plots 80 ticks
Array Access III
Summary [N = 1000 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
cmucl 0.02 0
ocamlb 0.17 0
python 0.45 0
guile 1.14 0
Array Access III
Summary [N = 7000 (max)]
Program CPU seconds Memory KB
bigloo 0.01 0
gcc 0.01 0
ocaml 0.01 0
g++ 0.01 0
cmucl 0.08 0
ocamlb 1.20 0
python 3.10 0
guile 7.88 0
Fibonacci Numbers
Measurement of CPU as N varies
8 24 32
ocaml 0.00 0.00 0.03
g++ 0.00 0.00 0.04
gcc 0.00 0.00 0.04
bigloo 0.00 0.00 0.05
cmucl 0.01 0.01 0.11
cmucl2 0.02 0.03 0.13
ocamlb 0.00 0.01 0.57
python 0.02 0.10 3.83
guile 0.02 0.14 5.36
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.1 which plots 55 ticks
Fibonacci Numbers
Summary [N = 32 (max)]
Program CPU seconds Memory KB
ocaml 0.03 0
gcc 0.04 0
g++ 0.04 0
bigloo 0.05 0
cmucl 0.11 0
cmucl2 0.13 0
ocamlb 0.57 0
python 3.83 0
guile 5.36 0
Fibonacci Numbers
Summary [N = 8 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocaml 0.00 0
ocamlb 0.00 0
gcc 0.00 0
g++ 0.00 0
cmucl 0.01 0
cmucl2 0.02 0
python 0.02 0
guile 0.02 0
Hash (Associative Array) Access
Measurement of CPU as N varies
20000 40000 60000 80000
gcc 0.02 0.04 0.07 0.10
ocaml 0.03 0.06 0.09 0.12
g++ 0.04 0.08 0.12 0.16
cmucl 0.04 0.08 0.11 0.17
python 0.07 0.14 0.19 0.26
bigloo 0.04 0.11 0.19 0.28
ocamlb 0.07 0.15 0.24 0.32
Hash (Associative Array) Access
Summary [N = 20000 (min)]
Program CPU seconds Memory KB
gcc 0.02 0
ocaml 0.03 0
bigloo 0.04 0
cmucl 0.04 0
g++ 0.04 0
python 0.07 0
ocamlb 0.07 0
Hash (Associative Array) Access
Summary [N = 80000 (max)]
Program CPU seconds Memory KB
gcc 0.10 0
ocaml 0.12 0
g++ 0.16 0
cmucl 0.17 0
python 0.26 0
bigloo 0.28 0
ocamlb 0.32 0
Hashes Part II
Measurement of CPU as N varies
10 50 100 150
gcc 0.03 0.15 0.27 0.40
ocaml 0.04 0.14 0.28 0.41
bigloo 0.07 0.27 0.53 0.78
g++ 0.07 0.29 0.56 0.84
cmucl 0.13 0.51 0.96 1.42
ocamlb 0.14 0.57 1.11 1.65
python2 0.16 0.60 1.14 1.67
python 0.21 0.70 1.32 1.94
guile 4.59 22.04 43.84 65.86
Hashes Part II
Summary [N = 10 (min)]
Program CPU seconds Memory KB
gcc 0.03 0
ocaml 0.04 0
bigloo 0.07 0
g++ 0.07 0
cmucl 0.13 0
ocamlb 0.14 0
python2 0.16 0
python 0.21 0
guile 4.59 0
Hashes Part II
Summary [N = 150 (max)]
Program CPU seconds Memory KB
gcc 0.40 0
ocaml 0.41 0
bigloo 0.78 0
g++ 0.84 0
cmucl 1.42 0
ocamlb 1.65 0
python2 1.67 0
python 1.94 0
guile 65.86 0
Heapsort
Measurement of CPU as N varies
1000 20000 40000 60000 80000
g++ 0.00 0.00 0.01 0.02 0.03
ocaml 0.00 0.00 0.01 0.02 0.03
gcc 0.00 0.00 0.01 0.02 0.03
cmucl 0.01 0.02 0.02 0.04 0.05
bigloo 0.00 0.06 0.13 0.22 0.31
ocamlb 0.00 0.16 0.34 0.54 0.75
python 0.03 0.38 0.82 1.28 1.77
guile 0.07 0.99 2.15 3.47 4.53
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.05 which plots 92 ticks
Heapsort
Summary [N = 1000 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
cmucl 0.01 0
python 0.03 0
guile 0.07 0
Heapsort
Summary [N = 80000 (max)]
Program CPU seconds Memory KB
gcc 0.03 0
ocaml 0.03 0
g++ 0.03 0
cmucl 0.05 0
bigloo 0.31 0
ocamlb 0.75 0
python 1.77 0
guile 4.53 0
List Processing
Measurement of CPU as N varies
1 4 8 12 16
gcc 0.00 0.00 0.00 0.00 0.00
ocaml 0.00 0.00 0.01 0.01 0.02
bigloo 0.00 0.01 0.03 0.04 0.06
python 0.03 0.10 0.19 0.28 0.36
ocamlb 0.02 0.11 0.21 0.32 0.42
List Processing
Summary [N = 16 (max)]
Program CPU seconds Memory KB
gcc 0.00 0
ocaml 0.02 0
bigloo 0.06 0
python 0.36 0
ocamlb 0.42 0
List Processing
Summary [N = 1 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
gcc 0.00 0
ocaml 0.00 0
ocamlb 0.02 0
python 0.03 0
Matrix Multiplication
Measurement of CPU as N varies
1 100 200 300
g++ 0.00 0.01 0.01 0.02
gcc 0.00 0.00 0.01 0.02
ocaml 0.00 0.01 0.02 0.03
bigloo 0.00 0.02 0.03 0.05
cmucl 0.01 0.04 0.06 0.08
ocamlb 0.00 0.57 1.14 1.70
python 0.03 1.74 3.45 5.16
guile 0.06 3.93 7.90 11.84
Matrix Multiplication
Summary [N = 1 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
cmucl 0.01 0
python 0.03 0
guile 0.06 0
Matrix Multiplication
Summary [N = 300 (max)]
Program CPU seconds Memory KB
gcc 0.02 0
g++ 0.02 0
ocaml 0.03 0
bigloo 0.05 0
cmucl 0.08 0
ocamlb 1.70 0
python 5.16 0
guile 11.84 0
Method Calls
Measurement of CPU as N varies
100000 400000 700000 1000000
g++ 0.00 0.00 0.01 0.01
gcc 0.00 0.00 0.01 0.02
ocaml 0.00 0.02 0.03 0.05
cmucl 0.04 0.06 0.08 0.10
bigloo 0.01 0.06 0.10 0.14
ocamlb 0.07 0.27 0.48 0.68
python 0.43 1.70 2.96 4.24
guile 0.58 2.10 3.65 5.19
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.1 which plots 53 ticks
Method Calls
Summary [N = 1000000 (max)]
Program CPU seconds Memory KB
g++ 0.01 0
gcc 0.02 0
ocaml 0.05 0
cmucl 0.10 0
bigloo 0.14 0
ocamlb 0.68 0
python 4.24 0
guile 5.19 0
Method Calls
Summary [N = 100000 (min)]
Program CPU seconds Memory KB
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
bigloo 0.01 0
cmucl 0.04 0
ocamlb 0.07 0
python 0.43 0
guile 0.58 0
Statistical Moments
Measurement of CPU as N varies
1 50 100 150
gcc 0.00 0.00 0.01 0.02
g++ 0.00 0.01 0.03 0.05
ocaml 0.00 0.02 0.04 0.08
cmucl 0.01 0.04 0.06 0.09
python 0.02 0.15 0.27 0.41
bigloo 0.00 0.10 0.27 0.52
ocamlb 0.00 0.16 0.35 0.53
guile 0.04 0.44 0.85 1.43
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.02 which plots 73 ticks
Statistical Moments
Summary [N = 150 (max)]
Program CPU seconds Memory KB
gcc 0.02 0
g++ 0.05 0
ocaml 0.08 0
cmucl 0.09 0
python 0.41 0
bigloo 0.52 0
ocamlb 0.53 0
guile 1.43 0
Statistical Moments
Summary [N = 1 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
cmucl 0.01 0
python 0.02 0
guile 0.04 0
Nested Loops
Measurement of CPU as N varies
4 8 12 16
g++ 0.00 0.00 0.00 0.03
gcc 0.00 0.00 0.00 0.03
ocaml 0.00 0.00 0.01 0.05
bigloo 0.00 0.00 0.01 0.05
cmucl 0.01 0.01 0.03 0.09
ocamlb 0.00 0.03 0.31 1.66
python 0.01 0.07 0.64 3.41
guile 0.03 0.29 2.84 15.30
Nested Loops
Summary [N = 16 (max)]
Program CPU seconds Memory KB
gcc 0.03 0
g++ 0.03 0
bigloo 0.05 0
ocaml 0.05 0
cmucl 0.09 0
ocamlb 1.66 0
python 3.41 0
guile 15.30 0
Nested Loops
Summary [N = 4 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
python 0.01 0
cmucl 0.01 0
guile 0.03 0
Object Instantiation
Measurement of CPU as N varies
100000 400000 700000 1000000
ocaml 0.01 0.05 0.09 0.13
gcc 0.01 0.06 0.10 0.14
g++ 0.02 0.07 0.13 0.18
bigloo 0.02 0.08 0.13 0.19
cmucl 0.05 0.14 0.22 0.30
ocamlb 0.19 0.74 1.29 1.85
python 0.50 1.94 3.37 4.79
guile 1.06 3.96 6.89 9.78
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.1 which plots 99 ticks
Object Instantiation
Summary [N = 1000000 (max)]
Program CPU seconds Memory KB
ocaml 0.13 0
gcc 0.14 0
g++ 0.18 0
bigloo 0.19 0
cmucl 0.30 0
ocamlb 1.85 0
python 4.79 0
guile 9.78 0
Object Instantiation
Summary [N = 100000 (min)]
Program CPU seconds Memory KB
gcc 0.01 0
ocaml 0.01 0
bigloo 0.02 0
g++ 0.02 0
cmucl 0.05 0
ocamlb 0.19 0
python 0.50 0
guile 1.06 0
Producer/Consumer Threads
Measurement of CPU as N varies
10000 30000 70000 100000
g++ 0.03 0.08 0.18 0.26
gcc 0.02 0.08 0.17 0.27
ocaml 0.02 0.07 0.22 0.28
ocamlb 0.04 0.12 0.27 0.39
guile 0.11 0.26 0.57 0.79
cmucl 0.12 0.33 0.73 1.06
python 0.26 0.80 1.88 2.59
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.05 which plots 53 ticks
Producer/Consumer Threads
Summary [N = 100000 (max)]
Program CPU seconds Memory KB
g++ 0.26 0
gcc 0.27 0
ocaml 0.28 0
ocamlb 0.39 0
guile 0.79 0
cmucl 1.06 0
python 2.59 0
Producer/Consumer Threads
Summary [N = 10000 (min)]
Program CPU seconds Memory KB
gcc 0.02 0
ocaml 0.02 0
g++ 0.03 0
ocamlb 0.04 0
guile 0.11 0
cmucl 0.12 0
python 0.26 0
Random Number Generator
Measurement of CPU as N varies
1000 300000 600000 900000
gcc 0.00 0.00 0.01 0.01
g++ 0.00 0.00 0.01 0.02
ocaml 0.00 0.02 0.03 0.05
cmucl 0.02 0.02 0.04 0.05
bigloo 0.00 0.09 0.17 0.24
ocamlb 0.00 0.13 0.27 0.41
python 0.01 0.44 0.86 1.28
guile 0.04 0.82 1.60 2.38
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.05 which plots 49 ticks
Random Number Generator
Summary [N = 1000 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocamlb 0.00 0
gcc 0.00 0
ocaml 0.00 0
g++ 0.00 0
python 0.01 0
cmucl 0.02 0
guile 0.04 0
Random Number Generator
Summary [N = 900000 (max)]
Program CPU seconds Memory KB
gcc 0.01 0
g++ 0.02 0
cmucl 0.05 0
ocaml 0.05 0
bigloo 0.24 0
ocamlb 0.41 0
python 1.28 0
guile 2.38 0
Regular Expression Matching
Measurement of CPU as N varies
1 3000 6000 9000
bigloo 0.00 0.22 0.44 0.66
cmucl 0.03 0.26 0.50 0.75
gcc 0.00 0.39 0.79 1.19
python 0.02 0.49 0.98 1.44
guile 0.04 2.31 4.55 6.80
Regular Expression Matching
Summary [N = 1 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
gcc 0.00 0
python 0.02 0
cmucl 0.03 0
guile 0.04 0
Regular Expression Matching
Summary [N = 9000 (max)]
Program CPU seconds Memory KB
bigloo 0.66 0
cmucl 0.75 0
gcc 1.19 0
python 1.44 0
guile 6.80 0
Reverse a File
Measurement of CPU as N varies
5 10 15 20
gcc 0.01 0.02 0.03 0.04
ocaml 0.01 0.02 0.04 0.05
python 0.05 0.09 0.14 0.18
bigloo 0.04 0.09 0.14 0.20
ocamlb 0.10 0.20 0.31 0.42
cmucl 0.27 0.46 0.68 1.00
guile 0.39 0.83 1.30 1.82
Reverse a File
Summary [N = 20 (max)]
Program CPU seconds Memory KB
gcc 0.04 0
ocaml 0.05 0
python 0.18 0
bigloo 0.20 0
ocamlb 0.42 0
cmucl 1.00 0
guile 1.82 0
Reverse a File
Summary [N = 5 (min)]
Program CPU seconds Memory KB
gcc 0.01 0
ocaml 0.01 0
bigloo 0.04 0
python 0.05 0
ocamlb 0.10 0
cmucl 0.27 0
guile 0.39 0
Sieve of Eratosthenes
Measurement of CPU as N varies
1 300 600 900
gcc 0.00 0.02 0.04 0.06
ocaml 0.00 0.02 0.05 0.07
bigloo 0.00 0.03 0.05 0.08
g++ 0.00 0.03 0.06 0.09
ocamlb 0.00 1.19 2.38 3.58
python 0.03 2.65 5.29 7.92
g++2 0.02 5.38 10.78 16.20
guile 0.06 6.50 12.89 19.26
Sieve of Eratosthenes
Summary [N = 1 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocaml 0.00 0
ocamlb 0.00 0
gcc 0.00 0
g++ 0.00 0
g++2 0.02 0
python 0.03 0
guile 0.06 0
Sieve of Eratosthenes
Summary [N = 900 (max)]
Program CPU seconds Memory KB
gcc 0.06 0
ocaml 0.07 0
bigloo 0.08 0
g++ 0.09 0
ocamlb 3.58 0
python 7.92 0
g++2 16.20 0
guile 19.26 0
Spell Checker
Measurement of CPU as N varies
1 4 7 10
gcc 0.05 0.10 0.15 0.19
ocaml 0.08 0.16 0.23 0.33
bigloo 0.06 0.19 0.33 0.46
python 0.13 0.27 0.41 0.55
ocamlb 0.14 0.33 0.52 0.70
cmucl 0.22 0.60 0.99 1.35
guile 0.77 1.96 3.14 4.38
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.05 which plots 88 ticks
Spell Checker
Summary [N = 10 (max)]
Program CPU seconds Memory KB
gcc 0.19 0
ocaml 0.33 0
bigloo 0.46 0
python 0.55 0
ocamlb 0.70 0
cmucl 1.35 0
guile 4.38 0
Spell Checker
Summary [N = 1 (min)]
Program CPU seconds Memory KB
gcc 0.05 0
bigloo 0.06 0
ocaml 0.08 0
python 0.13 0
ocamlb 0.14 0
cmucl 0.22 0
guile 0.77 0
String Concatenation
Measurement of CPU as N varies
10000 20000 30000 40000
g++ 0.00 0.00 0.00 0.00
gcc 0.00 0.00 0.00 0.00
ocaml 0.00 0.00 0.00 0.00
bigloo 0.00 0.00 0.00 0.01
cmucl 0.01 0.01 0.02 0.02
cmucl2 0.01 0.02 0.02 0.02
ocamlb 0.01 0.01 0.02 0.03
python 0.02 0.03 0.04 0.04
guile 0.13 0.18 0.22 0.28
bigloo2 0.68 2.65 5.97 10.85
ocaml2 0.47 2.15 6.96 12.56
python2 0.12 1.00 5.66 13.01
ocamlb2 0.49 2.31 7.45 13.11
String Concatenation
Summary [N = 10000 (min)]
Program CPU seconds Memory KB
bigloo 0.00 0
ocaml 0.00 0
gcc 0.00 0
g++ 0.00 0
cmucl2 0.01 0
ocamlb 0.01 0
cmucl 0.01 0
python 0.02 0
python2 0.12 0
guile 0.13 0
ocaml2 0.47 0
ocamlb2 0.49 0
bigloo2 0.68 0
String Concatenation
Summary [N = 40000 (max)]
Program CPU seconds Memory KB
ocaml 0.00 0
gcc 0.00 0
g++ 0.00 0
bigloo 0.01 0
cmucl2 0.02 0
cmucl 0.02 0
ocamlb 0.03 0
python 0.04 0
guile 0.28 0
bigloo2 10.85 0
ocaml2 12.56 0
python2 13.01 0
ocamlb2 13.11 0
Sum a File of Numbers
Measurement of CPU as N varies
100 400 700 1000
gcc 0.02 0.07 0.13 0.19
gcc2 0.02 0.07 0.13 0.19
ocaml 0.02 0.10 0.17 0.24
g++ 0.03 0.12 0.21 0.31
bigloo 0.05 0.20 0.34 0.48
ocamlb 0.07 0.30 0.51 0.73
python 0.13 0.50 0.87 1.22
cmucl 0.17 0.69 1.18 1.68
python2 0.19 0.74 1.26 1.80
guile 0.45 1.74 3.03 4.29
Chart::Base : Caution: Tick limit of 100 exceeded. Backing of to an interval of
0.05 which plots 87 ticks
Sum a File of Numbers
Summary [N = 1000 (max)]
Program CPU seconds Memory KB
gcc2 0.19 0
gcc 0.19 0
ocaml 0.24 0
g++ 0.31 0
bigloo 0.48 0
ocamlb 0.73 0
python 1.22 0
cmucl 1.68 0
python2 1.80 0
guile 4.29 0
Sum a File of Numbers
Summary [N = 100 (min)]
Program CPU seconds Memory KB
gcc2 0.02 0
ocaml 0.02 0
gcc 0.02 0
g++ 0.03 0
bigloo 0.05 0
ocamlb 0.07 0
python 0.13 0
cmucl 0.17 0
python2 0.19 0
guile 0.45 0
Count Lines/Words/Chars
Measurement of CPU as N varies
500 1000 1500 2000
gcc 0.01 0.03 0.04 0.06
ocaml 0.01 0.04 0.06 0.08
cmucl 0.05 0.09 0.13 0.17
g++ 0.06 0.10 0.16 0.22
python 0.11 0.20 0.30 0.39
bigloo 0.09 0.20 0.29 0.40
ocamlb 0.55 1.10 1.66 2.22
guile 3.88 7.75 11.60 15.49
Count Lines/Words/Chars
Summary [N = 2000 (max)]
Program CPU seconds Memory KB
gcc 0.06 0
ocaml 0.08 0
cmucl 0.17 0
g++ 0.22 0
python 0.39 0
bigloo 0.40 0
ocamlb 2.22 0
guile 15.49 0
Count Lines/Words/Chars
Summary [N = 500 (min)]
Program CPU seconds Memory KB
gcc 0.01 0
ocaml 0.01 0
cmucl 0.05 0
g++ 0.06 0
bigloo 0.09 0
python 0.11 0
ocamlb 0.55 0
guile 3.88 0
Word Frequency
Measurement of CPU as N varies
1 5 10 15 20
gcc2 0.01 0.05 0.08 0.12 0.16
gcc 0.01 0.04 0.09 0.13 0.17
ocaml 0.04 0.08 0.15 0.20 0.27
bigloo 0.03 0.10 0.20 0.28 0.38
python 0.09 0.22 0.39 0.56 0.73
ocamlb 0.18 0.58 1.09 1.59 2.08
guile 0.86 2.84 5.35 7.73 10.15
Word Frequency
Summary [N = 1 (min)]
Program CPU seconds Memory KB
gcc2 0.01 0
gcc 0.01 0
bigloo 0.03 0
ocaml 0.04 0
python 0.09 0
ocamlb 0.18 0
guile 0.86 0
Word Frequency
Summary [N = 20 (max)]
Program CPU seconds Memory KB
gcc2 0.16 0
gcc 0.17 0
ocaml 0.27 0
bigloo 0.38 0
python 0.73 0
ocamlb 2.08 0
guile 10.15 0
Yours,
d.
--
David Mentré <address@hidden>
- [Texmacs-dev] First results on Schemes, Lisps & others,
David MENTRE <=
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, David MENTRE, 2004/05/23
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, Joris van der Hoeven, 2004/05/23
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, David MENTRE, 2004/05/23
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, David MENTRE, 2004/05/23
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, Joris van der Hoeven, 2004/05/23
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, David Allouche, 2004/05/23
- Re: [Texmacs-dev] First results on Schemes, Lisps & others, Joris van der Hoeven, 2004/05/23