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 |
_ |
_ |
bash |
2.1 |
0.0 |
2.0 |
3.2 |
broome |
_ |
_ |
dash |
1.1 |
1.0 |
0.0 |
1.7 |
broome |
_ |
_ |
osh_eval.stripped |
2.9 |
2.8 |
0.0 |
4.1 |
broome |
_ |
_ |
python2 |
15.8 |
4.0 |
11.9 |
7.2 |
lenny |
_ |
_ |
dash |
0.4 |
0.4 |
0.0 |
1.7 |
lenny |
_ |
_ |
bash |
0.8 |
0.7 |
0.0 |
3.5 |
lenny |
_ |
_ |
osh_eval.stripped |
1.2 |
1.1 |
0.0 |
4.3 |
lenny |
_ |
_ |
python2 |
6.9 |
3.4 |
3.4 |
7.3 |
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 |
18.4 |
13.7 |
4.6 |
7.4 |
broome |
200 |
44 |
dash |
39.2 |
39.1 |
0.0 |
1.7 |
broome |
200 |
44 |
bash |
111.2 |
111.1 |
0.0 |
3.3 |
broome |
200 |
44 |
osh_eval.stripped |
174.3 |
134.7 |
39.6 |
102.6 |
lenny |
200 |
44 |
python2 |
6.5 |
0.0 |
6.5 |
7.3 |
lenny |
200 |
44 |
dash |
17.1 |
17.1 |
0.0 |
1.7 |
lenny |
200 |
44 |
bash |
63.8 |
63.8 |
0.0 |
3.3 |
lenny |
200 |
44 |
osh_eval.stripped |
96.5 |
72.3 |
24.1 |
102.6 |
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 |
32.7 |
24.1 |
10.8 |
7.6 |
broome |
10 |
configure |
osh_eval.stripped |
158.2 |
136.6 |
27.9 |
65.2 |
broome |
10 |
configure |
bash |
168.4 |
160.5 |
14.0 |
3.6 |
lenny |
10 |
configure |
python2 |
13.0 |
13.9 |
0.0 |
7.5 |
lenny |
10 |
configure |
osh_eval.stripped |
75.4 |
64.4 |
13.0 |
65.1 |
lenny |
10 |
configure |
bash |
79.1 |
76.1 |
5.1 |
3.7 |
parse_help (strings, real code)
host name |
arg1 |
runtime |
elapsed ms |
user ms |
sys ms |
max rss MB |
broome |
ls |
bash |
38.3 |
31.1 |
7.7 |
3.7 |
broome |
ls |
osh_eval.stripped |
51.1 |
38.5 |
13.1 |
10.5 |
broome |
ls-short |
bash |
16.7 |
9.5 |
7.9 |
3.7 |
broome |
ls-short |
osh_eval.stripped |
18.6 |
11.4 |
7.5 |
5.2 |
broome |
mypy |
bash |
41.7 |
36.7 |
5.5 |
3.7 |
broome |
mypy |
osh_eval.stripped |
67.6 |
55.2 |
12.7 |
12.9 |
lenny |
ls |
bash |
18.5 |
18.7 |
0.0 |
3.7 |
lenny |
ls |
osh_eval.stripped |
37.3 |
29.5 |
8.1 |
10.6 |
lenny |
ls-short |
bash |
6.2 |
6.4 |
0.0 |
3.8 |
lenny |
ls-short |
osh_eval.stripped |
10.1 |
9.8 |
0.6 |
5.3 |
lenny |
mypy |
osh_eval.stripped |
31.4 |
25.5 |
6.2 |
13.0 |
lenny |
mypy |
bash |
30.0 |
25.9 |
4.4 |
3.7 |
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 |
31.3 |
27.2 |
4.6 |
7.2 |
broome |
bytes |
200 |
osh_eval.stripped |
299.4 |
230.9 |
68.9 |
162.4 |
broome |
bytes |
200 |
bash |
350.3 |
341.7 |
9.0 |
3.6 |
broome |
int |
200 |
python2 |
61.6 |
60.4 |
1.6 |
7.1 |
broome |
int |
200 |
osh_eval.stripped |
300.5 |
224.5 |
76.2 |
151.1 |
broome |
int |
200 |
bash |
351.7 |
346.0 |
6.3 |
3.5 |
lenny |
bytes |
200 |
python2 |
13.0 |
12.8 |
0.4 |
7.2 |
lenny |
bytes |
200 |
osh_eval.stripped |
219.9 |
160.0 |
60.2 |
174.1 |
lenny |
bytes |
200 |
bash |
231.2 |
231.1 |
0.3 |
3.5 |
lenny |
int |
200 |
python2 |
27.9 |
28.2 |
0.0 |
7.3 |
lenny |
int |
200 |
osh_eval.stripped |
203.5 |
143.7 |
60.1 |
154.5 |
lenny |
int |
200 |
bash |
241.8 |
233.6 |
8.7 |
3.7 |
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 |
31.3 |
27.2 |
4.6 |
7.2 |
broome |
bubble_sort |
bytes |
200 |
osh_eval.stripped |
299.4 |
230.9 |
68.9 |
162.4 |
broome |
bubble_sort |
bytes |
200 |
bash |
350.3 |
341.7 |
9.0 |
3.6 |
broome |
bubble_sort |
int |
200 |
python2 |
61.6 |
60.4 |
1.6 |
7.1 |
broome |
bubble_sort |
int |
200 |
osh_eval.stripped |
300.5 |
224.5 |
76.2 |
151.1 |
broome |
bubble_sort |
int |
200 |
bash |
351.7 |
346.0 |
6.3 |
3.5 |
broome |
fib |
200 |
44 |
python2 |
18.4 |
13.7 |
4.6 |
7.4 |
broome |
fib |
200 |
44 |
dash |
39.2 |
39.1 |
0.0 |
1.7 |
broome |
fib |
200 |
44 |
bash |
111.2 |
111.1 |
0.0 |
3.3 |
broome |
fib |
200 |
44 |
osh_eval.stripped |
174.3 |
134.7 |
39.6 |
102.6 |
broome |
hello |
_ |
_ |
bash |
2.1 |
0.0 |
2.0 |
3.2 |
broome |
hello |
_ |
_ |
dash |
1.1 |
1.0 |
0.0 |
1.7 |
broome |
hello |
_ |
_ |
osh_eval.stripped |
2.9 |
2.8 |
0.0 |
4.1 |
broome |
hello |
_ |
_ |
python2 |
15.8 |
4.0 |
11.9 |
7.2 |
broome |
palindrome |
bytes |
_ |
python2 |
31.8 |
25.9 |
6.4 |
7.6 |
broome |
palindrome |
bytes |
_ |
bash |
250.9 |
241.6 |
9.8 |
3.4 |
broome |
palindrome |
bytes |
_ |
osh_eval.stripped |
391.7 |
301.3 |
90.9 |
237.3 |
broome |
palindrome |
unicode |
_ |
python2 |
33.2 |
27.0 |
6.7 |
7.4 |
broome |
palindrome |
unicode |
_ |
bash |
250.8 |
233.2 |
18.2 |
3.6 |
broome |
palindrome |
unicode |
_ |
osh_eval.stripped |
393.7 |
274.3 |
119.8 |
237.3 |
broome |
parse_help |
ls |
_ |
bash |
38.3 |
31.1 |
7.7 |
3.7 |
broome |
parse_help |
ls |
_ |
osh_eval.stripped |
51.1 |
38.5 |
13.1 |
10.5 |
broome |
parse_help |
ls-short |
_ |
bash |
16.7 |
9.5 |
7.9 |
3.7 |
broome |
parse_help |
ls-short |
_ |
osh_eval.stripped |
18.6 |
11.4 |
7.5 |
5.2 |
broome |
parse_help |
mypy |
_ |
bash |
41.7 |
36.7 |
5.5 |
3.7 |
broome |
parse_help |
mypy |
_ |
osh_eval.stripped |
67.6 |
55.2 |
12.7 |
12.9 |
broome |
word_freq |
10 |
configure |
python2 |
32.7 |
24.1 |
10.8 |
7.6 |
broome |
word_freq |
10 |
configure |
osh_eval.stripped |
158.2 |
136.6 |
27.9 |
65.2 |
broome |
word_freq |
10 |
configure |
bash |
168.4 |
160.5 |
14.0 |
3.6 |
lenny |
bubble_sort |
bytes |
200 |
python2 |
13.0 |
12.8 |
0.4 |
7.2 |
lenny |
bubble_sort |
bytes |
200 |
osh_eval.stripped |
219.9 |
160.0 |
60.2 |
174.1 |
lenny |
bubble_sort |
bytes |
200 |
bash |
231.2 |
231.1 |
0.3 |
3.5 |
lenny |
bubble_sort |
int |
200 |
python2 |
27.9 |
28.2 |
0.0 |
7.3 |
lenny |
bubble_sort |
int |
200 |
osh_eval.stripped |
203.5 |
143.7 |
60.1 |
154.5 |
lenny |
bubble_sort |
int |
200 |
bash |
241.8 |
233.6 |
8.7 |
3.7 |
lenny |
fib |
200 |
44 |
python2 |
6.5 |
0.0 |
6.5 |
7.3 |
lenny |
fib |
200 |
44 |
dash |
17.1 |
17.1 |
0.0 |
1.7 |
lenny |
fib |
200 |
44 |
bash |
63.8 |
63.8 |
0.0 |
3.3 |
lenny |
fib |
200 |
44 |
osh_eval.stripped |
96.5 |
72.3 |
24.1 |
102.6 |
lenny |
hello |
_ |
_ |
dash |
0.4 |
0.4 |
0.0 |
1.7 |
lenny |
hello |
_ |
_ |
bash |
0.8 |
0.7 |
0.0 |
3.5 |
lenny |
hello |
_ |
_ |
osh_eval.stripped |
1.2 |
1.1 |
0.0 |
4.3 |
lenny |
hello |
_ |
_ |
python2 |
6.9 |
3.4 |
3.4 |
7.3 |
lenny |
palindrome |
bytes |
_ |
python2 |
15.4 |
12.2 |
3.5 |
7.6 |
lenny |
palindrome |
bytes |
_ |
bash |
133.2 |
119.0 |
14.5 |
3.6 |
lenny |
palindrome |
bytes |
_ |
osh_eval.stripped |
258.6 |
163.1 |
95.8 |
237.3 |
lenny |
palindrome |
unicode |
_ |
python2 |
14.5 |
14.3 |
0.4 |
7.6 |
lenny |
palindrome |
unicode |
_ |
bash |
163.8 |
160.1 |
4.0 |
3.6 |
lenny |
palindrome |
unicode |
_ |
osh_eval.stripped |
256.6 |
184.7 |
72.0 |
237.3 |
lenny |
parse_help |
ls |
_ |
bash |
18.5 |
18.7 |
0.0 |
3.7 |
lenny |
parse_help |
ls |
_ |
osh_eval.stripped |
37.3 |
29.5 |
8.1 |
10.6 |
lenny |
parse_help |
ls-short |
_ |
bash |
6.2 |
6.4 |
0.0 |
3.8 |
lenny |
parse_help |
ls-short |
_ |
osh_eval.stripped |
10.1 |
9.8 |
0.6 |
5.3 |
lenny |
parse_help |
mypy |
_ |
osh_eval.stripped |
31.4 |
25.5 |
6.2 |
13.0 |
lenny |
parse_help |
mypy |
_ |
bash |
30.0 |
25.9 |
4.4 |
3.7 |
lenny |
word_freq |
10 |
configure |
python2 |
13.0 |
13.9 |
0.0 |
7.5 |
lenny |
word_freq |
10 |
configure |
osh_eval.stripped |
75.4 |
64.4 |
13.0 |
65.1 |
lenny |
word_freq |
10 |
configure |
bash |
79.1 |
76.1 |
5.1 |
3.7 |