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 broome host lenny
bash-4.4 gcc configure 27.9 16.0
bash-4.4 gcc make 37.7 31.5
dash-0.5.9.1 gcc configure 4.9 3.2
dash-0.5.9.1 gcc make 5.3 3.8
oil-0.14.2 clang configure 1.3 0.9
oil-0.14.2 clang _bin/oil.ovm-dbg 10.3 10.5
oil-0.14.2 clang _bin/oil.ovm 24.7 25.1
oil-0.14.2 gcc configure 1.3 0.6
oil-0.14.2 gcc _bin/oil.ovm-dbg 12.0 20.2
oil-0.14.2 gcc _bin/oil.ovm 28.5 62.2
oils-for-unix-0.14.2 clang oils-for-unix 15.2 17.7
oils-for-unix-0.14.2 clang oils-for-unix.stripped 40.0 45.0
oils-for-unix-0.14.2 gcc oils-for-unix 17.5 19.7
oils-for-unix-0.14.2 gcc oils-for-unix.stripped 41.3 47.2

Native Binary Size

binary compiler host broome host lenny
oils-for-unix clang 6,185,832 6,185,832
oils-for-unix.stripped clang 1,324,496 1,324,496
oils-for-unix gcc 7,196,224 7,196,224
oils-for-unix.stripped gcc 1,229,112 1,229,112

OVM Binary Size

The oil binary has two portions:

host label path num bytes bytecode size native code size
broome _tmp/ovm-build/bin/clang/oil.ovm 4,655,269 3,555,981 1,099,288
broome _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,384,333 3,555,981 2,828,352
broome _tmp/ovm-build/bin/gcc/oil.ovm 4,813,237 3,555,981 1,257,256
broome _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,569,813 3,555,981 3,013,832
lenny _tmp/ovm-build/bin/clang/oil.ovm 4,655,277 3,555,981 1,099,296
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,384,221 3,555,981 2,828,240
lenny _tmp/ovm-build/bin/gcc/oil.ovm 4,813,245 3,555,981 1,257,264
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,569,509 3,555,981 3,013,528

Host and Compiler Details

host label host id
broome broome-7a69aabc
lenny lenny-f88955fe
compiler label compiler id
gcc gcc-1c62c53f
clang clang-dc55b135