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 34.8 15.1
bash-4.4 gcc make 71.7 25.6
dash-0.5.9.1 gcc configure 6.2 2.9
dash-0.5.9.1 gcc make 8.2 3.1
oil-0.8.2 clang configure 1.7 0.7
oil-0.8.2 clang _bin/oil.ovm-dbg 18.6 5.4
oil-0.8.2 clang _bin/oil.ovm 52.2 15.7
oil-0.8.2 gcc configure 1.6 0.6
oil-0.8.2 gcc _bin/oil.ovm-dbg 20.5 6.9
oil-0.8.2 gcc _bin/oil.ovm 54.0 20.3
oil-native-0.8.2 clang _bin/osh_eval.dbg 54.9 15.8
oil-native-0.8.2 clang _bin/osh_eval.opt.stripped 104.9 34.2
oil-native-0.8.2 gcc _bin/osh_eval.dbg 50.4 17.4
oil-native-0.8.2 gcc _bin/osh_eval.opt.stripped 97.6 32.9

Native Binary Size

binary compiler host flanders host lisa
osh_eval.dbg clang 7,903,496 7,903,496
osh_eval.opt.stripped clang 1,232,576 1,232,576
osh_eval.dbg gcc 7,444,416 7,444,416
osh_eval.opt.stripped gcc 1,077,240 1,077,240

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,174,340 3,050,428 1,123,912
flanders _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,058,276 3,050,428 3,007,848
flanders _tmp/ovm-build/bin/gcc/oil.ovm 4,206,636 3,050,428 1,156,208
flanders _tmp/ovm-build/bin/gcc/oil.ovm-dbg 5,695,420 3,050,428 2,644,992
lisa _tmp/ovm-build/bin/clang/oil.ovm 4,174,348 3,050,428 1,123,920
lisa _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,058,284 3,050,428 3,007,856
lisa _tmp/ovm-build/bin/gcc/oil.ovm 4,206,644 3,050,428 1,156,216
lisa _tmp/ovm-build/bin/gcc/oil.ovm-dbg 5,695,428 3,050,428 2,645,000

Host and Compiler Details

host label host id
flanders flanders-889e300d
lisa lisa-6c96a848
compiler label compiler id
gcc gcc-816edb3d
clang clang-768eb1ae