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 28.1 19.0
bash-4.4 gcc make 37.8 41.5
dash-0.5.9.1 gcc configure 5.0 3.8
dash-0.5.9.1 gcc make 5.2 4.3
oil-0.15.0 clang configure 1.3 0.7
oil-0.15.0 clang _bin/oil.ovm-dbg 10.6 10.9
oil-0.15.0 clang _bin/oil.ovm 24.9 23.6
oil-0.15.0 gcc configure 1.3 0.7
oil-0.15.0 gcc _bin/oil.ovm-dbg 12.1 8.2
oil-0.15.0 gcc _bin/oil.ovm 28.8 24.1
oils-for-unix-0.15.0 clang oils-for-unix 10.9 10.5
oils-for-unix-0.15.0 clang oils-for-unix.stripped 31.5 41.5
oils-for-unix-0.15.0 gcc oils-for-unix 12.6 11.5
oils-for-unix-0.15.0 gcc oils-for-unix.stripped 27.3 29.6

Native Binary Size

binary compiler host broome host lenny
oils-for-unix clang 6,739,496 6,739,496
oils-for-unix.stripped clang 1,686,352 1,686,352
oils-for-unix gcc 7,966,504 7,966,504
oils-for-unix.stripped gcc 1,423,160 1,423,160

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,747,872 3,648,472 1,099,400
broome _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,477,584 3,648,472 2,829,112
broome _tmp/ovm-build/bin/gcc/oil.ovm 4,905,824 3,648,472 1,257,352
broome _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,662,400 3,648,472 3,013,928
lenny _tmp/ovm-build/bin/clang/oil.ovm 4,747,880 3,648,472 1,099,408
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,477,472 3,648,472 2,829,000
lenny _tmp/ovm-build/bin/gcc/oil.ovm 4,905,832 3,648,472 1,257,360
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,662,096 3,648,472 3,013,624

Host and Compiler Details

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