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 flanders host lisa
bash-4.4 gcc configure 32.2 14.3
bash-4.4 gcc make 67.2 24.8
dash-0.5.9.1 gcc configure 5.9 2.8
dash-0.5.9.1 gcc make 7.9 3.0
oil-0.8.7 clang configure 1.5 0.6
oil-0.8.7 clang _bin/oil.ovm-dbg 15.8 5.1
oil-0.8.7 clang _bin/oil.ovm 45.0 14.9
oil-0.8.7 gcc configure 1.6 0.6
oil-0.8.7 gcc _bin/oil.ovm-dbg 16.6 6.5
oil-0.8.7 gcc _bin/oil.ovm 47.0 18.9
oil-native-0.8.7 clang _bin/osh_eval.dbg 58.5 16.2
oil-native-0.8.7 clang _bin/osh_eval.opt.stripped 117.4 38.0
oil-native-0.8.7 gcc _bin/osh_eval.dbg 46.0 17.3
oil-native-0.8.7 gcc _bin/osh_eval.opt.stripped 103.2 36.8

Native Binary Size

binary compiler host flanders host lisa
osh_eval.dbg clang 8,734,128 8,734,128
osh_eval.opt.stripped clang 1,515,952 1,515,952
osh_eval.dbg gcc 8,067,912 8,067,912
osh_eval.opt.stripped gcc 1,331,992 1,331,992

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
flanders _tmp/ovm-build/bin/clang/oil.ovm 4,349,835 3,217,715 1,132,120
flanders _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,246,075 3,217,715 3,028,360
flanders _tmp/ovm-build/bin/gcc/oil.ovm 4,369,859 3,217,715 1,152,144
flanders _tmp/ovm-build/bin/gcc/oil.ovm-dbg 5,876,051 3,217,715 2,658,336
lisa _tmp/ovm-build/bin/clang/oil.ovm 4,349,843 3,217,715 1,132,128
lisa _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,246,083 3,217,715 3,028,368
lisa _tmp/ovm-build/bin/gcc/oil.ovm 4,369,867 3,217,715 1,152,152
lisa _tmp/ovm-build/bin/gcc/oil.ovm-dbg 5,876,059 3,217,715 2,658,344

Host and Compiler Details

host label host id
flanders flanders-59823a5d
lisa lisa-59823a5d
compiler label compiler id
gcc gcc-816edb3d
clang clang-768eb1ae