oilshell.org
OSH Parser Performance
We run $sh -n $file
for various files under various
shells. This means that shell startup time is included in the
elapsed time measurements, but long files are chosen to minimize its
effect.
Average Parsing Rate, Measured on Two Machines (lines/ms)
shell label |
total lines |
host flanders |
host lisa |
dash |
111,674 |
1,219.1 |
2,381.1 |
mksh |
111,674 |
432.7 |
897.7 |
oil-native |
118,863 |
206.6 |
775.4 |
bash |
118,863 |
249.1 |
606.1 |
zsh |
118,863 |
30.7 |
64.7 |
osh-cpython |
118,863 |
3.2 |
10.3 |
osh-ovm |
118,863 |
2.7 |
9.6 |
Memory Used to Parse
Running under osh-ovm
. Memory usage is measured in MB
(powers of 10), not MiB (powers of 2).
host |
VmRSS MB |
VmPeak MB |
num lines |
filename |
flanders |
12.4 |
25.2 |
1,679 |
t4014-format-patch.sh |
lisa |
12.6 |
25.2 |
1,679 |
t4014-format-patch.sh |
flanders |
15.2 |
27.9 |
1,733 |
functions |
lisa |
15.2 |
27.9 |
1,733 |
functions |
flanders |
15.7 |
28.6 |
2,029 |
configure-helper.sh |
lisa |
15.7 |
28.6 |
2,029 |
configure-helper.sh |
flanders |
17.4 |
30.2 |
2,512 |
abuild |
lisa |
17.2 |
30.2 |
2,512 |
abuild |
flanders |
16.1 |
28.9 |
2,698 |
Build.sh |
lisa |
16.0 |
28.9 |
2,698 |
Build.sh |
flanders |
13.0 |
25.6 |
3,123 |
t9300-fast-import.sh |
lisa |
12.9 |
25.6 |
3,123 |
t9300-fast-import.sh |
flanders |
26.1 |
38.6 |
5,160 |
test-cmd-util.sh |
lisa |
26.1 |
38.6 |
5,160 |
test-cmd-util.sh |
flanders |
27.5 |
40.4 |
9,661 |
ltmain.sh |
lisa |
27.7 |
40.4 |
9,661 |
ltmain.sh |
flanders |
47.3 |
60.4 |
20,489 |
configure |
lisa |
47.4 |
60.5 |
20,489 |
configure |
flanders |
109.4 |
122.4 |
69,779 |
configure-coreutils |
lisa |
109.5 |
122.4 |
69,779 |
configure-coreutils |
Shell and Host Details
Raw Data
Parse Time Breakdown by File
Elasped Time in milliseconds
host label |
bash |
dash |
mksh |
zsh |
osh-ovm |
osh-cpython |
oil-native |
osh to bash ratio |
num lines |
filename |
flanders |
11 |
3 |
6 |
162 |
235 |
228 |
12 |
1.1 |
1,679 |
t4014-format-patch.sh |
flanders |
16 |
4 |
13 |
46 |
755 |
706 |
19 |
1.2 |
1,733 |
functions |
flanders |
18 |
NA |
NA |
81 |
804 |
734 |
20 |
1.1 |
2,029 |
configure-helper.sh |
flanders |
17 |
5 |
16 |
65 |
1,150 |
1,312 |
22 |
1.3 |
2,512 |
abuild |
flanders |
15 |
4 |
10 |
161 |
830 |
958 |
19 |
1.3 |
2,698 |
Build.sh |
flanders |
16 |
4 |
7 |
202 |
279 |
319 |
10 |
0.6 |
3,123 |
t9300-fast-import.sh |
flanders |
46 |
NA |
NA |
208 |
2,808 |
3,451 |
42 |
0.9 |
5,160 |
test-cmd-util.sh |
flanders |
51 |
12 |
26 |
241 |
4,006 |
3,978 |
52 |
1.0 |
9,661 |
ltmain.sh |
flanders |
83 |
22 |
51 |
585 |
7,575 |
7,396 |
102 |
1.2 |
20,489 |
configure |
flanders |
204 |
37 |
128 |
2,117 |
26,330 |
17,976 |
278 |
1.4 |
69,779 |
configure-coreutils |
lisa |
4 |
1 |
2 |
62 |
86 |
92 |
2 |
0.6 |
1,679 |
t4014-format-patch.sh |
lisa |
4 |
2 |
4 |
22 |
294 |
279 |
4 |
1.0 |
1,733 |
functions |
lisa |
6 |
NA |
NA |
39 |
287 |
304 |
4 |
0.8 |
2,029 |
configure-helper.sh |
lisa |
6 |
2 |
4 |
34 |
421 |
381 |
5 |
0.9 |
2,512 |
abuild |
lisa |
6 |
2 |
4 |
62 |
302 |
302 |
4 |
0.7 |
2,698 |
Build.sh |
lisa |
5 |
2 |
3 |
73 |
94 |
103 |
3 |
0.7 |
3,123 |
t9300-fast-import.sh |
lisa |
18 |
NA |
NA |
121 |
911 |
853 |
13 |
0.7 |
5,160 |
test-cmd-util.sh |
lisa |
22 |
7 |
13 |
140 |
1,101 |
988 |
13 |
0.6 |
9,661 |
ltmain.sh |
lisa |
41 |
8 |
23 |
310 |
2,301 |
2,103 |
24 |
0.6 |
20,489 |
configure |
lisa |
84 |
23 |
70 |
975 |
6,648 |
6,141 |
80 |
1.0 |
69,779 |
configure-coreutils |
Parsing Rate in lines/millisecond
host label |
bash |
dash |
mksh |
zsh |
osh-ovm |
osh-cpython |
oil-native |
num lines |
filename |
flanders |
148.6 |
508.8 |
284.6 |
10.3 |
7.1 |
7.4 |
137.6 |
1,679 |
t4014-format-patch.sh |
flanders |
105.7 |
393.9 |
135.4 |
38.1 |
2.3 |
2.5 |
91.2 |
1,733 |
functions |
flanders |
114.6 |
NA |
NA |
25.1 |
2.5 |
2.8 |
104.1 |
2,029 |
configure-helper.sh |
flanders |
149.5 |
546.1 |
155.1 |
38.8 |
2.2 |
1.9 |
115.8 |
2,512 |
abuild |
flanders |
181.1 |
627.4 |
257.0 |
16.7 |
3.3 |
2.8 |
141.3 |
2,698 |
Build.sh |
flanders |
195.2 |
726.3 |
446.1 |
15.5 |
11.2 |
9.8 |
309.2 |
3,123 |
t9300-fast-import.sh |
flanders |
111.9 |
NA |
NA |
24.7 |
1.8 |
1.5 |
122.3 |
5,160 |
test-cmd-util.sh |
flanders |
189.8 |
840.1 |
368.7 |
40.1 |
2.4 |
2.4 |
186.1 |
9,661 |
ltmain.sh |
flanders |
246.6 |
914.7 |
401.7 |
35.0 |
2.7 |
2.8 |
200.5 |
20,489 |
configure |
flanders |
342.1 |
1,896.2 |
543.0 |
33.0 |
2.7 |
3.9 |
251.5 |
69,779 |
configure-coreutils |
lisa |
390.5 |
1,291.5 |
883.7 |
27.1 |
19.4 |
18.2 |
671.6 |
1,679 |
t4014-format-patch.sh |
lisa |
412.6 |
962.8 |
393.9 |
79.1 |
5.9 |
6.2 |
412.6 |
1,733 |
functions |
lisa |
362.3 |
NA |
NA |
52.6 |
7.1 |
6.7 |
471.9 |
2,029 |
configure-helper.sh |
lisa |
433.1 |
1,256.0 |
558.2 |
75.0 |
6.0 |
6.6 |
483.1 |
2,512 |
abuild |
lisa |
421.6 |
1,420.0 |
627.4 |
43.2 |
8.9 |
8.9 |
599.6 |
2,698 |
Build.sh |
lisa |
664.5 |
1,735.0 |
1,115.4 |
43.0 |
33.3 |
30.4 |
1,007.4 |
3,123 |
t9300-fast-import.sh |
lisa |
285.1 |
NA |
NA |
42.6 |
5.7 |
6.0 |
390.9 |
5,160 |
test-cmd-util.sh |
lisa |
447.3 |
1,420.7 |
748.9 |
69.0 |
8.8 |
9.8 |
760.7 |
9,661 |
ltmain.sh |
lisa |
496.1 |
2,498.7 |
879.4 |
66.1 |
8.9 |
9.7 |
868.2 |
20,489 |
configure |
lisa |
829.7 |
3,020.7 |
992.6 |
71.6 |
10.5 |
11.4 |
872.2 |
69,779 |
configure-coreutils |