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 33.2 13.7
bash-4.4 gcc make 62.2 23.4
dash-0.5.9.1 gcc configure 6.0 2.8
dash-0.5.9.1 gcc make 7.4 2.8
oil-0.8.10 clang configure 1.5 0.6
oil-0.8.10 clang _bin/oil.ovm-dbg 13.6 5.0
oil-0.8.10 clang _bin/oil.ovm 43.9 14.1
oil-0.8.10 gcc configure 1.7 0.6
oil-0.8.10 gcc _bin/oil.ovm-dbg 18.2 6.2
oil-0.8.10 gcc _bin/oil.ovm 49.1 17.9
oil-native-0.8.10 clang _bin/osh_eval.dbg 52.3 15.3
oil-native-0.8.10 clang _bin/osh_eval.opt.stripped 113.7 35.9
oil-native-0.8.10 gcc _bin/osh_eval.dbg 47.9 16.1
oil-native-0.8.10 gcc _bin/osh_eval.opt.stripped 101.2 34.3

Native Binary Size

binary compiler host flanders host lisa
osh_eval.dbg clang 8,690,952 8,690,952
osh_eval.opt.stripped clang 1,520,112 1,520,112
osh_eval.dbg gcc 8,026,080 8,026,080
osh_eval.opt.stripped gcc 1,332,056 1,332,056

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,374,457 3,238,097 1,136,360
flanders _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,279,481 3,238,097 3,041,384
flanders _tmp/ovm-build/bin/gcc/oil.ovm 4,390,401 3,238,097 1,152,304
flanders _tmp/ovm-build/bin/gcc/oil.ovm-dbg 5,908,313 3,238,097 2,670,216
lisa _tmp/ovm-build/bin/clang/oil.ovm 4,374,465 3,238,097 1,136,368
lisa _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,279,489 3,238,097 3,041,392
lisa _tmp/ovm-build/bin/gcc/oil.ovm 4,390,409 3,238,097 1,152,312
lisa _tmp/ovm-build/bin/gcc/oil.ovm-dbg 5,908,321 3,238,097 2,670,224

Host and Compiler Details

host label host id
flanders flanders-63f04b74
lisa lisa-63f04b74
compiler label compiler id
gcc gcc-816edb3d
clang clang-768eb1ae