oilshell.org
OSH Runtime Performance
Source code: oil/benchmarks/osh-runtime.sh
Elapsed Time by Shell (milliseconds)
Some benchmarks call many external tools, while some exercise the shell
interpreter itself. Parse time is included.
Memory usage is measured in MB (powers of 10), not MiB (powers of 2).
workload |
host name |
bash |
dash |
osh-cpython |
osh-native |
py bash ratio |
native bash ratio |
abuild-print-help |
no-host |
13 |
6 |
326 |
12 |
26.00 |
0.98 |
configure.cpython |
no-host |
9,723 |
9,588 |
17,223 |
8,226 |
1.77 |
0.85 |
configure.ocaml |
no-host |
2,756 |
2,663 |
3,219 |
2,593 |
1.17 |
0.94 |
configure.tcc |
no-host |
28 |
27 |
126 |
28 |
4.46 |
0.98 |
configure.util-linux |
no-host |
8,318 |
9,225 |
19,661 |
7,816 |
2.36 |
0.94 |
configure.yash |
no-host |
1,119 |
1,070 |
1,529 |
1,030 |
1.37 |
0.92 |
hello-world |
no-host |
1 |
0 |
29 |
2 |
33.14 |
2.20 |
Memory Usage (Max Resident Set Size in MB)
GC Stats
workload |
host name |
elapsed ms |
max gc millis |
total gc millis |
allocated MB |
max rss MB |
num allocated |
num live |
max survived |
num in heap |
num in pool 1 |
num in pool 2 |
num gc points |
num gc done |
gc threshold |
num growths |
hello-world |
no-host |
2 |
0 |
0 |
0.2 |
6.2 |
3,666 |
3,666 |
0 |
673 |
1,821 |
1,172 |
2 |
0 |
50,000 |
0 |
abuild-print-help |
no-host |
12 |
0 |
1 |
2.9 |
9.0 |
117,505 |
67,565 |
42,990 |
4,848 |
55,552 |
57,105 |
477 |
3 |
85,980 |
1 |
configure.cpython |
no-host |
8,226 |
1 |
52 |
16.1 |
27.6 |
1,817,201 |
26,784 |
28,982 |
103,213 |
953,852 |
760,136 |
37,405 |
63 |
50,000 |
0 |
configure.util-linux |
no-host |
7,816 |
2 |
47 |
22.6 |
30.3 |
2,764,617 |
27,105 |
67,639 |
130,391 |
1,375,524 |
1,258,702 |
44,791 |
42 |
135,278 |
1 |
configure.ocaml |
no-host |
2,593 |
0 |
1 |
2.7 |
20.7 |
152,172 |
11,269 |
5,200 |
8,750 |
73,943 |
69,479 |
2,375 |
3 |
50,000 |
0 |
configure.tcc |
no-host |
28 |
0 |
0 |
1.3 |
19.5 |
30,775 |
30,775 |
0 |
1,623 |
14,989 |
14,163 |
329 |
0 |
50,000 |
0 |
configure.yash |
no-host |
1,030 |
0 |
1 |
2.6 |
24.6 |
142,131 |
9,792 |
6,577 |
7,667 |
72,905 |
61,559 |
2,608 |
3 |
50,000 |
0 |
Details of All Tasks
task id |
host name |
workload |
elapsed ms |
user ms |
sys ms |
max rss MB |
shell label |
0 |
no-host |
hello-world |
1 |
1 |
0 |
3.0 |
bash |
1 |
no-host |
abuild-print-help |
13 |
11 |
1 |
4.7 |
bash |
2 |
no-host |
configure.cpython |
9,723 |
7,363 |
2,606 |
27.5 |
bash |
3 |
no-host |
configure.util-linux |
8,318 |
6,336 |
2,251 |
30.4 |
bash |
4 |
no-host |
configure.ocaml |
2,756 |
1,314 |
462 |
20.7 |
bash |
5 |
no-host |
configure.tcc |
28 |
20 |
8 |
19.5 |
bash |
6 |
no-host |
configure.yash |
1,119 |
791 |
333 |
24.6 |
bash |
7 |
no-host |
hello-world |
0 |
0 |
0 |
1.6 |
dash |
8 |
no-host |
abuild-print-help |
6 |
5 |
1 |
3.7 |
dash |
9 |
no-host |
configure.cpython |
9,588 |
7,239 |
2,602 |
27.6 |
dash |
10 |
no-host |
configure.util-linux |
9,225 |
7,042 |
2,446 |
30.4 |
dash |
11 |
no-host |
configure.ocaml |
2,663 |
1,212 |
460 |
20.6 |
dash |
12 |
no-host |
configure.tcc |
27 |
24 |
3 |
19.5 |
dash |
13 |
no-host |
configure.yash |
1,070 |
777 |
293 |
24.5 |
dash |
14 |
no-host |
hello-world |
29 |
21 |
8 |
17.2 |
osh-cpython |
15 |
no-host |
abuild-print-help |
326 |
311 |
17 |
21.8 |
osh-cpython |
16 |
no-host |
configure.cpython |
17,223 |
13,283 |
4,909 |
27.6 |
osh-cpython |
17 |
no-host |
configure.util-linux |
19,661 |
15,957 |
4,288 |
30.4 |
osh-cpython |
18 |
no-host |
configure.ocaml |
3,219 |
1,624 |
684 |
20.7 |
osh-cpython |
19 |
no-host |
configure.tcc |
126 |
102 |
26 |
19.5 |
osh-cpython |
20 |
no-host |
configure.yash |
1,529 |
1,177 |
374 |
24.5 |
osh-cpython |
21 |
no-host |
hello-world |
2 |
2 |
0 |
6.2 |
osh-native |
22 |
no-host |
abuild-print-help |
12 |
12 |
1 |
9.0 |
osh-native |
23 |
no-host |
configure.cpython |
8,226 |
6,256 |
2,081 |
27.6 |
osh-native |
24 |
no-host |
configure.util-linux |
7,816 |
5,808 |
2,084 |
30.3 |
osh-native |
25 |
no-host |
configure.ocaml |
2,593 |
1,173 |
432 |
20.7 |
osh-native |
26 |
no-host |
configure.tcc |
28 |
18 |
10 |
19.5 |
osh-native |
27 |
no-host |
configure.yash |
1,030 |
764 |
267 |
24.6 |
osh-native |
Shell and Host Details
raw files