OVM Build Performance

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.8 16.1
bash-4.4 gcc make 37.6 23.8
dash-0.5.9.1 gcc configure 4.9 3.4
dash-0.5.9.1 gcc make 5.3 2.9
oil-0.12.3 clang configure 1.4 0.7
oil-0.12.3 clang _bin/oil.ovm-dbg 10.3 6.5
oil-0.12.3 clang _bin/oil.ovm 24.9 16.9
oil-0.12.3 gcc configure 1.3 0.7
oil-0.12.3 gcc _bin/oil.ovm-dbg 11.9 6.6
oil-0.12.3 gcc _bin/oil.ovm 28.2 19.0
oil-native-0.12.3 clang osh_eval 14.2 10.0
oil-native-0.12.3 clang osh_eval.stripped 50.4 37.2
oil-native-0.12.3 gcc osh_eval 17.0 12.2
oil-native-0.12.3 gcc osh_eval.stripped 40.0 29.1

Native Binary Size

binary compiler host broome host lenny
osh_eval clang 7,477,256 7,477,256
osh_eval.stripped clang 1,586,096 1,586,096
osh_eval gcc 8,159,168 8,159,168
osh_eval.stripped gcc 1,135,280 1,135,280

OVM Binary Size

The oil binary has two portions:

  1. Architecture-independent bytecode.zip
  2. Architecture- and compiler- dependent native code (_build/oil/ovm*)

host label path num bytes bytecode size native code size
broome _tmp/ovm-build/bin/clang/oil.ovm 4,543,741 3,444,477 1,099,264
broome _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,273,005 3,444,477 2,828,528
broome _tmp/ovm-build/bin/gcc/oil.ovm 4,701,701 3,444,477 1,257,224
broome _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,452,053 3,444,477 3,007,576
lenny _tmp/ovm-build/bin/clang/oil.ovm 4,543,677 3,444,477 1,099,200
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,272,157 3,444,477 2,827,680
lenny _tmp/ovm-build/bin/gcc/oil.ovm 4,697,549 3,444,477 1,253,072
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,450,917 3,444,477 3,006,440

Host and Compiler Details

host label host id
broome broome-8a85d07d
lenny lenny-23f35694
compiler label compiler id
gcc gcc-1c62c53f
clang clang-dc55b135