OVM Build Performance

Source code: oil/benchmarks/osh-parser.sh

Time in Seconds by Host and Compiler

We measure the build speed of bash and dash for comparison.

src dir compiler label action host hoover host lenny
bash-4.4 gcc configure 14.5 16.7
bash-4.4 gcc make 27.0 29.5
dash-0.5.9.1 gcc configure 2.7 3.3
dash-0.5.9.1 gcc make 3.2 3.5
oil-0.21.0 clang configure 0.6 0.8
oil-0.21.0 clang _bin/oil.ovm-dbg 5.4 7.4
oil-0.21.0 clang _bin/oil.ovm 13.7 20.6
oil-0.21.0 gcc configure 0.6 0.7
oil-0.21.0 gcc _bin/oil.ovm-dbg 6.8 7.8
oil-0.21.0 gcc _bin/oil.ovm 18.8 23.6
oils-for-unix-0.21.0 clang oils-for-unix 7.8 12.0
oils-for-unix-0.21.0 clang oils-for-unix.stripped 40.1 64.1
oils-for-unix-0.21.0 gcc oils-for-unix 10.9 14.5
oils-for-unix-0.21.0 gcc oils-for-unix.stripped 33.0 37.5

Native Binary Size

binary compiler host hoover host lenny
oils-for-unix clang 8,481,896 8,426,480
oils-for-unix.stripped clang 3,196,072 3,245,120
oils-for-unix gcc 10,025,232 10,149,952
oils-for-unix.stripped gcc 2,084,560 2,005,184

OVM Binary Size

The oil binary has two portions:

host label path num bytes bytecode size native code size
lenny _tmp/ovm-build/bin/clang/oil.ovm 5,747,489 4,689,145 1,058,344
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 7,424,201 4,689,145 2,735,056
lenny _tmp/ovm-build/bin/gcc/oil.ovm 5,917,737 4,689,145 1,228,592
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 7,630,961 4,689,145 2,941,816
hoover _tmp/ovm-build/bin/clang/oil.ovm 5,751,673 4,689,145 1,062,528
hoover _tmp/ovm-build/bin/clang/oil.ovm-dbg 7,424,153 4,689,145 2,735,008
hoover _tmp/ovm-build/bin/gcc/oil.ovm 5,771,769 4,689,145 1,082,624
hoover _tmp/ovm-build/bin/gcc/oil.ovm-dbg 7,429,273 4,689,145 2,740,128

Host and Compiler Details

host label host id
lenny lenny-098a8e52
hoover hoover-94601b4f
compiler label compiler id
gcc gcc-1c62c53f
clang clang-dc55b135
gcc gcc-869a96ef