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.

Parse Time Summary

host label shell label total lines total ms lines per ms
flanders bash 118,863 488 243.4
flanders dash 111,674 94 1,186.8
flanders mksh 111,674 254 439.5
flanders osh-cpython 118,863 18,130 6.6
flanders osh-ovm 118,863 22,057 5.4
flanders zsh 118,863 3,176 37.4
lisa bash 118,863 202 587.6
lisa dash 111,674 38 2,923.4
lisa mksh 111,674 118 948.8
lisa osh-cpython 118,863 8,087 14.7
lisa osh-ovm 118,863 9,072 13.1
lisa zsh 118,863 1,216 97.7

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.2 25.2 1,679 t4014-format-patch.sh
flanders 16.5 29.2 1,733 functions
flanders 17.1 30.1 2,029 configure-helper.sh
flanders 19.6 32.7 2,512 abuild
flanders 18.0 30.5 2,698 Build.sh
flanders 13.0 25.8 3,123 t9300-fast-import.sh
flanders 36.1 49.0 5,160 test-cmd-util.sh
flanders 36.4 49.1 9,661 ltmain.sh
flanders 68.4 81.3 20,489 configure
flanders 171.9 184.8 69,779 configure-coreutils
lisa 12.2 25.2 1,679 t4014-format-patch.sh
lisa 16.5 29.2 1,733 functions
lisa 17.3 30.1 2,029 configure-helper.sh
lisa 19.8 32.7 2,512 abuild
lisa 18.0 30.8 2,698 Build.sh
lisa 12.9 25.8 3,123 t9300-fast-import.sh
lisa 36.0 49.0 5,160 test-cmd-util.sh
lisa 36.2 49.1 9,661 ltmain.sh
lisa 68.3 81.3 20,489 configure
lisa 172.0 184.8 69,779 configure-coreutils

Shell and Host Details

shell label shell id
bash bash-d685a43c
dash dash-2887d9e6
mksh mksh-ae7d165b
zsh zsh-ca7b4198
osh-cpython osh-c5f18366
osh-ovm osh-88a24461
host label host id
flanders flanders-9b72f5aa
lisa lisa-48e2e6d7

Raw Data

filename
flanders.2018-04-29__19-57-32.times.csv
lisa.2018-04-29__18-59-28.times.csv

Parse Time Breakdown by File

Elasped Time in milliseconds

host label bash dash mksh zsh osh-ovm osh-cpython osh to bash ratio num lines filename
flanders 12 4 5 137 170 176 14.8 1,679 t4014-format-patch.sh
flanders 17 5 11 35 474 414 27.4 1,733 functions
flanders 20 NA NA 66 511 452 25.2 2,029 configure-helper.sh
flanders 20 6 13 51 653 623 32.5 2,512 abuild
flanders 18 4 13 135 474 469 25.8 2,698 Build.sh
flanders 19 3 8 173 182 194 9.6 3,123 t9300-fast-import.sh
flanders 41 NA NA 171 1,433 1,378 34.8 5,160 test-cmd-util.sh
flanders 47 14 30 194 1,678 1,540 35.5 9,661 ltmain.sh
flanders 88 20 49 490 4,224 3,363 47.9 20,489 configure
flanders 205 38 124 1,724 12,259 9,519 59.7 69,779 configure-coreutils
lisa 4 1 2 49 66 81 16.4 1,679 t4014-format-patch.sh
lisa 5 2 3 14 185 168 34.8 1,733 functions
lisa 6 NA NA 33 226 191 39.0 2,029 configure-helper.sh
lisa 6 2 5 20 289 259 47.4 2,512 abuild
lisa 5 2 3 45 207 198 43.1 2,698 Build.sh
lisa 5 2 2 56 83 85 15.3 3,123 t9300-fast-import.sh
lisa 16 NA NA 71 666 619 40.6 5,160 test-cmd-util.sh
lisa 22 5 11 78 708 683 32.0 9,661 ltmain.sh
lisa 40 7 24 208 1,778 1,543 44.7 20,489 configure
lisa 93 18 68 643 4,865 4,260 52.5 69,779 configure-coreutils

Parsing Rate in lines/millisecond

host label bash dash mksh zsh osh-ovm osh-cpython num lines filename
flanders 146.0 466.4 316.8 12.3 9.9 9.6 1,679 t4014-format-patch.sh
flanders 100.2 346.6 159.0 49.1 3.7 4.2 1,733 functions
flanders 100.0 NA NA 30.5 4.0 4.5 2,029 configure-helper.sh
flanders 125.0 398.7 193.2 48.9 3.8 4.0 2,512 abuild
flanders 146.6 642.4 210.8 20.0 5.7 5.8 2,698 Build.sh
flanders 164.4 918.5 367.4 18.1 17.1 16.1 3,123 t9300-fast-import.sh
flanders 125.2 NA NA 30.2 3.6 3.7 5,160 test-cmd-util.sh
flanders 204.2 705.2 319.9 49.7 5.8 6.3 9,661 ltmain.sh
flanders 232.6 1,029.6 418.1 41.8 4.9 6.1 20,489 configure
flanders 340.1 1,836.3 560.9 40.5 5.7 7.3 69,779 configure-coreutils
lisa 419.8 1,199.3 883.7 34.1 25.6 20.8 1,679 t4014-format-patch.sh
lisa 327.0 1,155.3 559.0 127.4 9.4 10.3 1,733 functions
lisa 349.8 NA NA 61.3 9.0 10.6 2,029 configure-helper.sh
lisa 411.8 1,395.6 546.1 125.6 8.7 9.7 2,512 abuild
lisa 562.1 1,587.1 817.6 60.2 13.1 13.6 2,698 Build.sh
lisa 578.3 1,951.9 1,357.8 55.9 37.7 36.6 3,123 t9300-fast-import.sh
lisa 314.6 NA NA 72.9 7.7 8.3 5,160 test-cmd-util.sh
lisa 437.1 1,894.3 878.3 123.4 13.7 14.2 9,661 ltmain.sh
lisa 514.8 3,013.1 864.5 98.6 11.5 13.3 20,489 configure
lisa 753.6 3,813.1 1,029.2 108.6 14.3 16.4 69,779 configure-coreutils