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.

Summary

host label shell label total lines total ms lines per ms
flanders bash 50,200 316.9 158.4
flanders dash 43,011 36.8 1,168.8
flanders mksh 43,011 138.0 311.7
flanders osh-cpython 50,200 63,639.1 0.8
flanders osh-ovm 50,200 68,701.7 0.7
flanders zsh 50,200 880.5 57.0
lisa bash 50,200 99.8 503.0
lisa dash 43,011 20.6 2,087.9
lisa mksh 43,011 48.9 879.6
lisa osh-cpython 50,200 28,744.1 1.7
lisa osh-ovm 50,200 30,319.2 1.7
lisa zsh 50,200 337.8 148.6

Shell and Host Details

shell label shell id
bash bash-d685a43c
dash dash-2887d9e6
mksh mksh-ae7d165b
zsh zsh-ca7b4198
osh-cpython osh-b9c63c21
osh-ovm osh-6544c54b
host label host id
flanders flanders-8cad9f6e
lisa lisa-8cad9f6e

Raw Timing Data

filename
flanders.2017-11-07__08-31-54.times.csv
lisa.2017-11-07__08-19-14.times.csv

Per-File Breakdown

Elasped Time in milliseconds

host label bash dash mksh zsh osh-ovm osh-cpython num lines filename
flanders 8.9 3.1 8.1 24.4 1,647.2 1,655.8 1,116 build.sh
flanders 7.2 2.3 3.9 82.5 748.8 785.6 1,679 t4014-format-patch.sh
flanders 8.5 3.6 6.0 20.4 2,216.3 2,196.8 1,733 functions
flanders 27.9 NA NA 61.7 2,876.2 2,896.5 2,029 configure-helper.sh
flanders 16.9 3.4 18.7 36.8 4,132.9 3,720.3 2,512 abuild
flanders 16.7 2.8 9.4 68.5 3,170.6 2,871.5 2,698 Build.sh
flanders 13.8 2.2 4.5 100.2 593.8 623.7 3,123 t9300-fast-import.sh
flanders 37.9 NA NA 75.0 8,854.4 7,926.6 5,160 test-cmd-util.sh
flanders 75.9 6.6 25.9 139.1 9,197.4 8,907.6 9,661 ltmain.sh
flanders 103.2 12.8 61.5 271.9 35,264.1 32,054.7 20,489 configure
lisa 5.3 1.3 2.7 7.7 753.7 732.4 1,116 build.sh
lisa 3.2 1.2 2.0 32.9 302.0 320.1 1,679 t4014-format-patch.sh
lisa 3.9 1.6 2.9 8.5 987.0 958.5 1,733 functions
lisa 5.1 NA NA 14.1 1,229.5 1,215.3 2,029 configure-helper.sh
lisa 5.9 1.8 4.2 11.5 1,703.9 1,654.5 2,512 abuild
lisa 4.6 1.7 3.2 30.0 1,300.1 1,247.4 2,698 Build.sh
lisa 4.6 1.3 1.9 39.9 269.4 249.3 3,123 t9300-fast-import.sh
lisa 14.9 NA NA 36.5 3,746.7 3,568.3 5,160 test-cmd-util.sh
lisa 18.0 4.9 11.0 47.9 4,173.7 4,012.1 9,661 ltmain.sh
lisa 34.3 6.8 21.0 108.8 15,853.2 14,786.2 20,489 configure

Parsing Rate in lines/millisecond

host label bash dash mksh zsh osh-ovm osh-cpython num lines filename
flanders 125.4 360.0 137.8 45.7 0.7 0.7 1,116 build.sh
flanders 233.2 730.0 430.5 20.4 2.2 2.1 1,679 t4014-format-patch.sh
flanders 203.9 481.4 288.8 85.0 0.8 0.8 1,733 functions
flanders 72.7 NA NA 32.9 0.7 0.7 2,029 configure-helper.sh
flanders 148.6 738.8 134.3 68.3 0.6 0.7 2,512 abuild
flanders 161.6 963.6 287.0 39.4 0.9 0.9 2,698 Build.sh
flanders 226.3 1,419.5 694.0 31.2 5.3 5.0 3,123 t9300-fast-import.sh
flanders 136.1 NA NA 68.8 0.6 0.7 5,160 test-cmd-util.sh
flanders 127.3 1,463.8 373.0 69.5 1.1 1.1 9,661 ltmain.sh
flanders 198.5 1,600.7 333.2 75.4 0.6 0.6 20,489 configure
lisa 210.6 858.5 413.3 144.9 1.5 1.5 1,116 build.sh
lisa 524.7 1,399.2 839.5 51.0 5.6 5.2 1,679 t4014-format-patch.sh
lisa 444.4 1,083.1 597.6 203.9 1.8 1.8 1,733 functions
lisa 397.8 NA NA 143.9 1.7 1.7 2,029 configure-helper.sh
lisa 425.8 1,395.6 598.1 218.4 1.5 1.5 2,512 abuild
lisa 586.5 1,587.1 843.1 89.9 2.1 2.2 2,698 Build.sh
lisa 678.9 2,402.3 1,643.7 78.3 11.6 12.5 3,123 t9300-fast-import.sh
lisa 346.3 NA NA 141.4 1.4 1.4 5,160 test-cmd-util.sh
lisa 536.7 1,971.6 878.3 201.7 2.3 2.4 9,661 ltmain.sh
lisa 597.3 3,013.1 975.7 188.3 1.3 1.4 20,489 configure