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 |
flanders |
_ |
_ |
dash |
1.6 |
1.5 |
0.0 |
1.6 |
flanders |
_ |
_ |
bash |
2.4 |
2.4 |
0.0 |
3.1 |
flanders |
_ |
_ |
osh_eval.opt.stripped |
3.1 |
3.1 |
0.0 |
4.0 |
flanders |
_ |
_ |
python |
20.7 |
8.3 |
12.4 |
6.8 |
lisa |
_ |
_ |
osh_eval.opt.stripped |
1.5 |
0.0 |
1.4 |
4.0 |
lisa |
_ |
_ |
dash |
0.4 |
0.4 |
0.0 |
1.7 |
lisa |
_ |
_ |
bash |
0.8 |
0.7 |
0.0 |
3.1 |
lisa |
_ |
_ |
python |
8.2 |
4.1 |
4.1 |
7.0 |
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 |
flanders |
200 |
44 |
python |
27.1 |
23.1 |
3.9 |
6.9 |
flanders |
200 |
44 |
dash |
61.5 |
61.4 |
0.0 |
1.7 |
flanders |
200 |
44 |
bash |
240.2 |
236.2 |
4.0 |
3.1 |
flanders |
200 |
44 |
osh_eval.opt.stripped |
359.8 |
271.8 |
87.9 |
98.9 |
lisa |
200 |
44 |
python |
8.0 |
4.0 |
4.0 |
6.9 |
lisa |
200 |
44 |
dash |
21.7 |
21.7 |
0.0 |
1.6 |
lisa |
200 |
44 |
osh_eval.opt.stripped |
99.2 |
62.0 |
37.2 |
98.9 |
lisa |
200 |
44 |
bash |
78.6 |
78.6 |
0.0 |
3.2 |
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 |
flanders |
10 |
configure |
python |
52.0 |
48.0 |
7.0 |
7.1 |
flanders |
10 |
configure |
osh_eval.opt.stripped |
293.5 |
247.2 |
50.2 |
63.5 |
flanders |
10 |
configure |
bash |
388.0 |
359.8 |
36.5 |
3.4 |
lisa |
10 |
configure |
python |
14.8 |
9.2 |
6.4 |
7.2 |
lisa |
10 |
configure |
osh_eval.opt.stripped |
90.4 |
78.6 |
12.6 |
63.6 |
lisa |
10 |
configure |
bash |
103.9 |
96.5 |
7.0 |
3.5 |
parse_help (strings, real code)
host name |
arg1 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
flanders |
ls |
osh_eval.opt.stripped |
68.6 |
41.7 |
27.3 |
10.5 |
flanders |
ls |
bash |
53.8 |
43.0 |
11.1 |
3.7 |
flanders |
ls-short |
osh_eval.opt.stripped |
23.9 |
10.8 |
13.6 |
5.0 |
flanders |
ls-short |
bash |
20.5 |
15.9 |
5.1 |
3.5 |
flanders |
mypy |
bash |
67.7 |
60.8 |
7.3 |
3.7 |
flanders |
mypy |
osh_eval.opt.stripped |
91.4 |
65.7 |
26.1 |
13.0 |
lisa |
ls |
osh_eval.opt.stripped |
21.8 |
8.2 |
13.1 |
10.6 |
lisa |
ls |
bash |
15.6 |
13.0 |
2.7 |
3.6 |
lisa |
ls-short |
bash |
4.9 |
4.9 |
0.0 |
3.5 |
lisa |
ls-short |
osh_eval.opt.stripped |
5.6 |
5.3 |
0.3 |
4.9 |
lisa |
mypy |
bash |
22.9 |
21.5 |
1.4 |
3.6 |
lisa |
mypy |
osh_eval.opt.stripped |
30.1 |
21.7 |
8.5 |
13.0 |
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 |
flanders |
bytes |
200 |
python |
48.7 |
31.2 |
18.1 |
6.7 |
flanders |
bytes |
200 |
osh_eval.opt.stripped |
713.7 |
619.3 |
94.8 |
154.5 |
flanders |
bytes |
200 |
bash |
952.4 |
952.9 |
0.0 |
3.3 |
flanders |
int |
200 |
python |
99.4 |
92.0 |
7.9 |
6.8 |
flanders |
int |
200 |
osh_eval.opt.stripped |
632.6 |
547.8 |
85.3 |
131.0 |
flanders |
int |
200 |
bash |
955.1 |
953.8 |
1.9 |
3.3 |
lisa |
bytes |
200 |
python |
16.7 |
9.6 |
7.3 |
6.9 |
lisa |
bytes |
200 |
osh_eval.opt.stripped |
271.8 |
231.9 |
40.0 |
162.5 |
lisa |
bytes |
200 |
bash |
302.6 |
298.7 |
4.0 |
3.5 |
lisa |
int |
200 |
python |
35.2 |
35.3 |
0.0 |
7.0 |
lisa |
int |
200 |
osh_eval.opt.stripped |
220.2 |
176.3 |
44.0 |
137.2 |
lisa |
int |
200 |
bash |
279.1 |
279.3 |
0.0 |
3.4 |
Interpreter and Host Details
Details
host name |
task name |
arg1 |
arg2 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
flanders |
bubble_sort |
bytes |
200 |
python |
48.7 |
31.2 |
18.1 |
6.7 |
flanders |
bubble_sort |
bytes |
200 |
osh_eval.opt.stripped |
713.7 |
619.3 |
94.8 |
154.5 |
flanders |
bubble_sort |
bytes |
200 |
bash |
952.4 |
952.9 |
0.0 |
3.3 |
flanders |
bubble_sort |
int |
200 |
python |
99.4 |
92.0 |
7.9 |
6.8 |
flanders |
bubble_sort |
int |
200 |
osh_eval.opt.stripped |
632.6 |
547.8 |
85.3 |
131.0 |
flanders |
bubble_sort |
int |
200 |
bash |
955.1 |
953.8 |
1.9 |
3.3 |
flanders |
fib |
200 |
44 |
python |
27.1 |
23.1 |
3.9 |
6.9 |
flanders |
fib |
200 |
44 |
dash |
61.5 |
61.4 |
0.0 |
1.7 |
flanders |
fib |
200 |
44 |
bash |
240.2 |
236.2 |
4.0 |
3.1 |
flanders |
fib |
200 |
44 |
osh_eval.opt.stripped |
359.8 |
271.8 |
87.9 |
98.9 |
flanders |
hello |
_ |
_ |
dash |
1.6 |
1.5 |
0.0 |
1.6 |
flanders |
hello |
_ |
_ |
bash |
2.4 |
2.4 |
0.0 |
3.1 |
flanders |
hello |
_ |
_ |
osh_eval.opt.stripped |
3.1 |
3.1 |
0.0 |
4.0 |
flanders |
hello |
_ |
_ |
python |
20.7 |
8.3 |
12.4 |
6.8 |
flanders |
palindrome |
bytes |
_ |
python |
41.1 |
26.2 |
15.4 |
7.1 |
flanders |
palindrome |
bytes |
_ |
bash |
562.2 |
513.0 |
47.3 |
3.3 |
flanders |
palindrome |
bytes |
_ |
osh_eval.opt.stripped |
775.6 |
621.0 |
155.1 |
230.9 |
flanders |
palindrome |
unicode |
_ |
python |
53.6 |
46.7 |
7.4 |
7.1 |
flanders |
palindrome |
unicode |
_ |
osh_eval.opt.stripped |
779.8 |
608.8 |
171.5 |
230.9 |
flanders |
palindrome |
unicode |
_ |
bash |
656.8 |
615.8 |
41.5 |
3.3 |
flanders |
parse_help |
ls |
_ |
osh_eval.opt.stripped |
68.6 |
41.7 |
27.3 |
10.5 |
flanders |
parse_help |
ls |
_ |
bash |
53.8 |
43.0 |
11.1 |
3.7 |
flanders |
parse_help |
ls-short |
_ |
osh_eval.opt.stripped |
23.9 |
10.8 |
13.6 |
5.0 |
flanders |
parse_help |
ls-short |
_ |
bash |
20.5 |
15.9 |
5.1 |
3.5 |
flanders |
parse_help |
mypy |
_ |
bash |
67.7 |
60.8 |
7.3 |
3.7 |
flanders |
parse_help |
mypy |
_ |
osh_eval.opt.stripped |
91.4 |
65.7 |
26.1 |
13.0 |
flanders |
word_freq |
10 |
configure |
python |
52.0 |
48.0 |
7.0 |
7.1 |
flanders |
word_freq |
10 |
configure |
osh_eval.opt.stripped |
293.5 |
247.2 |
50.2 |
63.5 |
flanders |
word_freq |
10 |
configure |
bash |
388.0 |
359.8 |
36.5 |
3.4 |
lisa |
bubble_sort |
bytes |
200 |
python |
16.7 |
9.6 |
7.3 |
6.9 |
lisa |
bubble_sort |
bytes |
200 |
osh_eval.opt.stripped |
271.8 |
231.9 |
40.0 |
162.5 |
lisa |
bubble_sort |
bytes |
200 |
bash |
302.6 |
298.7 |
4.0 |
3.5 |
lisa |
bubble_sort |
int |
200 |
python |
35.2 |
35.3 |
0.0 |
7.0 |
lisa |
bubble_sort |
int |
200 |
osh_eval.opt.stripped |
220.2 |
176.3 |
44.0 |
137.2 |
lisa |
bubble_sort |
int |
200 |
bash |
279.1 |
279.3 |
0.0 |
3.4 |
lisa |
fib |
200 |
44 |
python |
8.0 |
4.0 |
4.0 |
6.9 |
lisa |
fib |
200 |
44 |
dash |
21.7 |
21.7 |
0.0 |
1.6 |
lisa |
fib |
200 |
44 |
osh_eval.opt.stripped |
99.2 |
62.0 |
37.2 |
98.9 |
lisa |
fib |
200 |
44 |
bash |
78.6 |
78.6 |
0.0 |
3.2 |
lisa |
hello |
_ |
_ |
osh_eval.opt.stripped |
1.5 |
0.0 |
1.4 |
4.0 |
lisa |
hello |
_ |
_ |
dash |
0.4 |
0.4 |
0.0 |
1.7 |
lisa |
hello |
_ |
_ |
bash |
0.8 |
0.7 |
0.0 |
3.1 |
lisa |
hello |
_ |
_ |
python |
8.2 |
4.1 |
4.1 |
7.0 |
lisa |
palindrome |
bytes |
_ |
python |
15.7 |
15.7 |
0.0 |
7.1 |
lisa |
palindrome |
bytes |
_ |
bash |
200.6 |
178.0 |
22.5 |
3.4 |
lisa |
palindrome |
bytes |
_ |
osh_eval.opt.stripped |
278.6 |
222.3 |
56.4 |
231.1 |
lisa |
palindrome |
unicode |
_ |
python |
17.1 |
14.0 |
2.8 |
7.2 |
lisa |
palindrome |
unicode |
_ |
bash |
198.7 |
190.9 |
7.9 |
3.4 |
lisa |
palindrome |
unicode |
_ |
osh_eval.opt.stripped |
286.9 |
205.5 |
79.5 |
231.0 |
lisa |
parse_help |
ls |
_ |
osh_eval.opt.stripped |
21.8 |
8.2 |
13.1 |
10.6 |
lisa |
parse_help |
ls |
_ |
bash |
15.6 |
13.0 |
2.7 |
3.6 |
lisa |
parse_help |
ls-short |
_ |
bash |
4.9 |
4.9 |
0.0 |
3.5 |
lisa |
parse_help |
ls-short |
_ |
osh_eval.opt.stripped |
5.6 |
5.3 |
0.3 |
4.9 |
lisa |
parse_help |
mypy |
_ |
bash |
22.9 |
21.5 |
1.4 |
3.6 |
lisa |
parse_help |
mypy |
_ |
osh_eval.opt.stripped |
30.1 |
21.7 |
8.5 |
13.0 |
lisa |
word_freq |
10 |
configure |
python |
14.8 |
9.2 |
6.4 |
7.2 |
lisa |
word_freq |
10 |
configure |
osh_eval.opt.stripped |
90.4 |
78.6 |
12.6 |
63.6 |
lisa |
word_freq |
10 |
configure |
bash |
103.9 |
96.5 |
7.0 |
3.5 |