oilshell.org
OSH Compute Performance
Running time and memory usage of programs that test data structures (as opposed
to I/O).
Memory usage is measured in MB (powers of 10), not MiB (powers of 2).
Source code: oil/benchmarks/compute
hello (minimal startup)
host name |
arg1 |
arg2 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
_ |
_ |
dash |
1.1 |
1.1 |
0.0 |
1.7 |
broome |
_ |
_ |
bash |
2.1 |
2.1 |
0.0 |
3.4 |
broome |
_ |
_ |
osh_eval.stripped |
3.1 |
3.1 |
0.0 |
4.1 |
broome |
_ |
_ |
python2 |
16.8 |
8.4 |
8.4 |
7.4 |
lenny |
_ |
_ |
dash |
0.6 |
0.6 |
0.0 |
1.7 |
lenny |
_ |
_ |
bash |
0.8 |
0.8 |
0.0 |
3.4 |
lenny |
_ |
_ |
osh_eval.stripped |
1.1 |
1.1 |
0.0 |
4.4 |
lenny |
_ |
_ |
python2 |
6.0 |
6.0 |
0.0 |
7.4 |
fibonacci (integers)
- arg1: number of repetitions
- arg2: the N in fib(N)
host name |
arg1 |
arg2 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
200 |
44 |
python2 |
17.5 |
17.4 |
0.0 |
7.4 |
broome |
200 |
44 |
dash |
34.6 |
34.5 |
0.0 |
1.7 |
broome |
200 |
44 |
bash |
111.9 |
107.9 |
4.0 |
3.4 |
broome |
200 |
44 |
osh_eval.stripped |
472.1 |
388.0 |
84.0 |
154.3 |
lenny |
200 |
44 |
python2 |
7.9 |
4.0 |
4.0 |
7.3 |
lenny |
200 |
44 |
dash |
18.1 |
18.1 |
0.0 |
1.7 |
lenny |
200 |
44 |
bash |
65.0 |
65.0 |
0.0 |
3.3 |
lenny |
200 |
44 |
osh_eval.stripped |
351.3 |
299.3 |
51.9 |
154.3 |
word_freq (associative arrays / hash tables)
- arg1: number of repetitions
- arg2: the file (varies size of hash table)
host name |
arg1 |
arg2 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
10 |
configure |
python2 |
35.4 |
24.3 |
13.2 |
7.4 |
broome |
10 |
configure |
bash |
174.4 |
167.7 |
13.0 |
3.7 |
broome |
10 |
configure |
osh_eval.stripped |
326.3 |
260.5 |
71.7 |
86.4 |
lenny |
10 |
configure |
python2 |
15.3 |
14.7 |
1.6 |
7.4 |
lenny |
10 |
configure |
bash |
103.7 |
96.1 |
6.7 |
3.6 |
lenny |
10 |
configure |
osh_eval.stripped |
222.4 |
181.5 |
43.1 |
86.2 |
parse_help (strings, real code)
host name |
arg1 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
ls |
bash |
38.1 |
34.5 |
4.1 |
3.8 |
broome |
ls |
osh_eval.stripped |
71.3 |
55.3 |
16.5 |
12.4 |
broome |
ls-short |
osh_eval.stripped |
18.9 |
7.8 |
11.6 |
5.6 |
broome |
ls-short |
bash |
16.9 |
16.2 |
1.2 |
3.7 |
broome |
mypy |
bash |
41.6 |
35.6 |
6.4 |
3.9 |
broome |
mypy |
osh_eval.stripped |
89.9 |
73.8 |
16.6 |
15.5 |
lenny |
ls |
bash |
15.0 |
14.8 |
0.3 |
3.7 |
lenny |
ls |
osh_eval.stripped |
40.0 |
35.8 |
4.3 |
12.2 |
lenny |
ls-short |
bash |
6.6 |
5.8 |
0.5 |
3.8 |
lenny |
ls-short |
osh_eval.stripped |
8.1 |
8.4 |
0.0 |
5.5 |
lenny |
mypy |
bash |
19.2 |
19.3 |
0.0 |
3.7 |
lenny |
mypy |
osh_eval.stripped |
46.2 |
46.4 |
0.0 |
15.4 |
bubble_sort (array of integers, arrays of strings)
- arg1: type of array
- arg2: length of array
host name |
arg1 |
arg2 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
bytes |
200 |
python2 |
34.8 |
31.9 |
3.5 |
7.3 |
broome |
bytes |
200 |
bash |
321.8 |
314.5 |
7.8 |
3.5 |
broome |
bytes |
200 |
osh_eval.stripped |
912.7 |
820.2 |
92.9 |
286.3 |
broome |
int |
200 |
python2 |
55.8 |
49.4 |
6.9 |
7.3 |
broome |
int |
200 |
bash |
363.6 |
358.8 |
5.2 |
3.7 |
broome |
int |
200 |
osh_eval.stripped |
840.9 |
729.1 |
112.2 |
222.6 |
lenny |
bytes |
200 |
python2 |
14.1 |
14.4 |
0.0 |
7.4 |
lenny |
bytes |
200 |
bash |
255.2 |
252.5 |
2.9 |
3.7 |
lenny |
bytes |
200 |
osh_eval.stripped |
842.9 |
699.0 |
144.0 |
286.4 |
lenny |
int |
200 |
python2 |
34.2 |
30.5 |
4.0 |
7.5 |
lenny |
int |
200 |
bash |
230.5 |
230.4 |
0.3 |
3.6 |
lenny |
int |
200 |
osh_eval.stripped |
730.6 |
650.7 |
79.7 |
225.9 |
Interpreter and Host Details
Details
host name |
task name |
arg1 |
arg2 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
bubble_sort |
bytes |
200 |
python2 |
34.8 |
31.9 |
3.5 |
7.3 |
broome |
bubble_sort |
bytes |
200 |
bash |
321.8 |
314.5 |
7.8 |
3.5 |
broome |
bubble_sort |
bytes |
200 |
osh_eval.stripped |
912.7 |
820.2 |
92.9 |
286.3 |
broome |
bubble_sort |
int |
200 |
python2 |
55.8 |
49.4 |
6.9 |
7.3 |
broome |
bubble_sort |
int |
200 |
bash |
363.6 |
358.8 |
5.2 |
3.7 |
broome |
bubble_sort |
int |
200 |
osh_eval.stripped |
840.9 |
729.1 |
112.2 |
222.6 |
broome |
fib |
200 |
44 |
python2 |
17.5 |
17.4 |
0.0 |
7.4 |
broome |
fib |
200 |
44 |
dash |
34.6 |
34.5 |
0.0 |
1.7 |
broome |
fib |
200 |
44 |
bash |
111.9 |
107.9 |
4.0 |
3.4 |
broome |
fib |
200 |
44 |
osh_eval.stripped |
472.1 |
388.0 |
84.0 |
154.3 |
broome |
hello |
_ |
_ |
dash |
1.1 |
1.1 |
0.0 |
1.7 |
broome |
hello |
_ |
_ |
bash |
2.1 |
2.1 |
0.0 |
3.4 |
broome |
hello |
_ |
_ |
osh_eval.stripped |
3.1 |
3.1 |
0.0 |
4.1 |
broome |
hello |
_ |
_ |
python2 |
16.8 |
8.4 |
8.4 |
7.4 |
broome |
palindrome |
bytes |
_ |
python2 |
32.2 |
21.8 |
10.7 |
7.5 |
broome |
palindrome |
bytes |
_ |
bash |
198.5 |
190.1 |
8.8 |
3.7 |
broome |
palindrome |
bytes |
_ |
osh_eval.stripped |
1,099.7 |
981.9 |
118.0 |
346.4 |
broome |
palindrome |
unicode |
_ |
python2 |
35.1 |
32.8 |
2.8 |
7.5 |
broome |
palindrome |
unicode |
_ |
bash |
266.3 |
260.6 |
6.3 |
3.7 |
broome |
palindrome |
unicode |
_ |
osh_eval.stripped |
1,067.6 |
860.1 |
207.8 |
346.4 |
broome |
parse_help |
ls |
_ |
bash |
38.1 |
34.5 |
4.1 |
3.8 |
broome |
parse_help |
ls |
_ |
osh_eval.stripped |
71.3 |
55.3 |
16.5 |
12.4 |
broome |
parse_help |
ls-short |
_ |
osh_eval.stripped |
18.9 |
7.8 |
11.6 |
5.6 |
broome |
parse_help |
ls-short |
_ |
bash |
16.9 |
16.2 |
1.2 |
3.7 |
broome |
parse_help |
mypy |
_ |
bash |
41.6 |
35.6 |
6.4 |
3.9 |
broome |
parse_help |
mypy |
_ |
osh_eval.stripped |
89.9 |
73.8 |
16.6 |
15.5 |
broome |
word_freq |
10 |
configure |
python2 |
35.4 |
24.3 |
13.2 |
7.4 |
broome |
word_freq |
10 |
configure |
bash |
174.4 |
167.7 |
13.0 |
3.7 |
broome |
word_freq |
10 |
configure |
osh_eval.stripped |
326.3 |
260.5 |
71.7 |
86.4 |
lenny |
bubble_sort |
bytes |
200 |
python2 |
14.1 |
14.4 |
0.0 |
7.4 |
lenny |
bubble_sort |
bytes |
200 |
bash |
255.2 |
252.5 |
2.9 |
3.7 |
lenny |
bubble_sort |
bytes |
200 |
osh_eval.stripped |
842.9 |
699.0 |
144.0 |
286.4 |
lenny |
bubble_sort |
int |
200 |
python2 |
34.2 |
30.5 |
4.0 |
7.5 |
lenny |
bubble_sort |
int |
200 |
bash |
230.5 |
230.4 |
0.3 |
3.6 |
lenny |
bubble_sort |
int |
200 |
osh_eval.stripped |
730.6 |
650.7 |
79.7 |
225.9 |
lenny |
fib |
200 |
44 |
python2 |
7.9 |
4.0 |
4.0 |
7.3 |
lenny |
fib |
200 |
44 |
dash |
18.1 |
18.1 |
0.0 |
1.7 |
lenny |
fib |
200 |
44 |
bash |
65.0 |
65.0 |
0.0 |
3.3 |
lenny |
fib |
200 |
44 |
osh_eval.stripped |
351.3 |
299.3 |
51.9 |
154.3 |
lenny |
hello |
_ |
_ |
dash |
0.6 |
0.6 |
0.0 |
1.7 |
lenny |
hello |
_ |
_ |
bash |
0.8 |
0.8 |
0.0 |
3.4 |
lenny |
hello |
_ |
_ |
osh_eval.stripped |
1.1 |
1.1 |
0.0 |
4.4 |
lenny |
hello |
_ |
_ |
python2 |
6.0 |
6.0 |
0.0 |
7.4 |
lenny |
palindrome |
bytes |
_ |
python2 |
14.7 |
11.8 |
3.2 |
7.5 |
lenny |
palindrome |
bytes |
_ |
bash |
139.5 |
127.5 |
12.3 |
3.6 |
lenny |
palindrome |
bytes |
_ |
osh_eval.stripped |
863.2 |
711.1 |
152.5 |
346.3 |
lenny |
palindrome |
unicode |
_ |
python2 |
17.8 |
17.7 |
0.4 |
7.5 |
lenny |
palindrome |
unicode |
_ |
bash |
149.5 |
139.0 |
10.7 |
3.7 |
lenny |
palindrome |
unicode |
_ |
osh_eval.stripped |
866.4 |
720.0 |
146.7 |
346.3 |
lenny |
parse_help |
ls |
_ |
bash |
15.0 |
14.8 |
0.3 |
3.7 |
lenny |
parse_help |
ls |
_ |
osh_eval.stripped |
40.0 |
35.8 |
4.3 |
12.2 |
lenny |
parse_help |
ls-short |
_ |
bash |
6.6 |
5.8 |
0.5 |
3.8 |
lenny |
parse_help |
ls-short |
_ |
osh_eval.stripped |
8.1 |
8.4 |
0.0 |
5.5 |
lenny |
parse_help |
mypy |
_ |
bash |
19.2 |
19.3 |
0.0 |
3.7 |
lenny |
parse_help |
mypy |
_ |
osh_eval.stripped |
46.2 |
46.4 |
0.0 |
15.4 |
lenny |
word_freq |
10 |
configure |
python2 |
15.3 |
14.7 |
1.6 |
7.4 |
lenny |
word_freq |
10 |
configure |
bash |
103.7 |
96.1 |
6.7 |
3.6 |
lenny |
word_freq |
10 |
configure |
osh_eval.stripped |
222.4 |
181.5 |
43.1 |
86.2 |