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 314.2 159.8
flanders dash 43,011 51.5 835.2
flanders mksh 43,011 115.5 372.4
flanders osh-cpython 50,200 55,922.8 0.9
flanders osh-ovm 50,200 62,193.7 0.8
flanders zsh 50,200 917.8 54.7
lisa bash 50,200 102.8 488.3
lisa dash 43,011 20.6 2,087.9
lisa mksh 43,011 50.6 850.0
lisa osh-cpython 50,200 20,953.6 2.4
lisa osh-ovm 50,200 21,700.6 2.3
lisa zsh 50,200 341.3 147.1

Shell and Host Details

shell label shell id
bash bash-d685a43c
dash dash-2887d9e6
mksh mksh-ae7d165b
zsh zsh-ca7b4198
osh-cpython osh-3b0e381f
osh-ovm osh-2689ed74
host label host id
flanders flanders-8cad9f6e
lisa lisa-8cad9f6e

Raw Timing Data

filename
flanders.2017-11-08__21-06-28.times.csv
lisa.2017-11-08__21-11-01.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.7 7.5 17.3 2,151.2 1,525.5 1,116 build.sh
flanders 7.1 2.4 4.0 109.6 904.3 746.8 1,679 t4014-format-patch.sh
flanders 8.6 2.6 14.0 18.8 2,551.9 2,044.1 1,733 functions
flanders 11.8 NA NA 32.4 3,087.1 2,988.7 2,029 configure-helper.sh
flanders 13.7 4.7 8.5 48.9 3,193.4 3,359.1 2,512 abuild
flanders 10.3 3.3 9.8 69.1 2,778.8 2,404.1 2,698 Build.sh
flanders 24.4 2.3 5.1 129.5 621.7 678.9 3,123 t9300-fast-import.sh
flanders 49.5 NA NA 86.2 8,625.5 8,178.4 5,160 test-cmd-util.sh
flanders 77.1 16.0 22.4 113.4 9,929.8 11,032.7 9,661 ltmain.sh
flanders 102.8 16.5 44.2 292.6 28,350.0 22,964.5 20,489 configure
lisa 4.9 1.4 2.8 8.3 659.5 648.8 1,116 build.sh
lisa 3.4 1.2 2.5 33.6 285.0 291.4 1,679 t4014-format-patch.sh
lisa 4.3 1.4 2.9 7.7 878.1 846.4 1,733 functions
lisa 5.9 NA NA 14.5 1,146.7 1,100.1 2,029 configure-helper.sh
lisa 5.6 1.6 4.3 13.7 1,400.0 1,361.9 2,512 abuild
lisa 4.6 2.3 3.3 33.4 1,021.5 1,005.1 2,698 Build.sh
lisa 4.5 1.5 2.1 40.9 234.8 232.6 3,123 t9300-fast-import.sh
lisa 18.3 NA NA 35.7 3,488.1 3,316.5 5,160 test-cmd-util.sh
lisa 17.0 4.4 10.6 47.8 3,776.6 3,631.4 9,661 ltmain.sh
lisa 34.3 6.8 22.1 105.7 8,810.3 8,519.4 20,489 configure

Parsing Rate in lines/millisecond

host label bash dash mksh zsh osh-ovm osh-cpython num lines filename
flanders 125.4 301.6 148.8 64.5 0.5 0.7 1,116 build.sh
flanders 236.5 699.6 419.8 15.3 1.9 2.2 1,679 t4014-format-patch.sh
flanders 201.5 666.5 123.8 92.2 0.7 0.8 1,733 functions
flanders 171.9 NA NA 62.6 0.7 0.7 2,029 configure-helper.sh
flanders 183.4 534.5 295.5 51.4 0.8 0.7 2,512 abuild
flanders 261.9 817.6 275.3 39.0 1.0 1.1 2,698 Build.sh
flanders 128.0 1,357.8 612.4 24.1 5.0 4.6 3,123 t9300-fast-import.sh
flanders 104.2 NA NA 59.9 0.6 0.6 5,160 test-cmd-util.sh
flanders 125.3 603.8 431.3 85.2 1.0 0.9 9,661 ltmain.sh
flanders 199.3 1,241.8 463.6 70.0 0.7 0.9 20,489 configure
lisa 227.8 797.1 398.6 134.5 1.7 1.7 1,116 build.sh
lisa 493.8 1,399.2 671.6 50.0 5.9 5.8 1,679 t4014-format-patch.sh
lisa 403.0 1,237.9 597.6 225.1 2.0 2.0 1,733 functions
lisa 343.9 NA NA 139.9 1.8 1.8 2,029 configure-helper.sh
lisa 448.6 1,570.0 584.2 183.4 1.8 1.8 2,512 abuild
lisa 586.5 1,173.0 817.6 80.8 2.6 2.7 2,698 Build.sh
lisa 694.0 2,082.0 1,487.1 76.4 13.3 13.4 3,123 t9300-fast-import.sh
lisa 282.0 NA NA 144.5 1.5 1.6 5,160 test-cmd-util.sh
lisa 568.3 2,195.7 911.4 202.1 2.6 2.7 9,661 ltmain.sh
lisa 597.3 3,013.1 927.1 193.8 2.3 2.4 20,489 configure