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 hoover host lenny
bash-4.4 gcc configure 13.0 16.8
bash-4.4 gcc make 25.5 28.9
dash-0.5.9.1 gcc configure 2.8 3.2
dash-0.5.9.1 gcc make 3.0 3.3
oil-0.18.0 clang configure 0.6 0.8
oil-0.18.0 clang _bin/oil.ovm-dbg 5.5 8.1
oil-0.18.0 clang _bin/oil.ovm 13.5 19.7
oil-0.18.0 gcc configure 0.6 0.6
oil-0.18.0 gcc _bin/oil.ovm-dbg 6.9 7.6
oil-0.18.0 gcc _bin/oil.ovm 18.7 23.2
oils-for-unix-0.18.0 clang oils-for-unix 6.3 9.8
oils-for-unix-0.18.0 clang oils-for-unix.stripped 21.3 31.8
oils-for-unix-0.18.0 gcc oils-for-unix 9.0 11.9
oils-for-unix-0.18.0 gcc oils-for-unix.stripped 25.3 30.1

Native Binary Size

binary compiler host hoover host lenny
oils-for-unix clang 7,613,632 7,562,112
oils-for-unix.stripped clang 1,922,584 1,922,480
oils-for-unix gcc 8,948,488 9,085,552
oils-for-unix.stripped gcc 1,697,392 1,663,072

OVM Binary Size

The oil binary has two portions:

host label path num bytes bytecode size native code size
hoover _tmp/ovm-build/bin/clang/oil.ovm 5,231,424 4,144,272 1,087,152
hoover _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,959,344 4,144,272 2,815,072
hoover _tmp/ovm-build/bin/gcc/oil.ovm 5,255,656 4,144,272 1,111,384
hoover _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,963,056 4,144,272 2,818,784
lenny _tmp/ovm-build/bin/clang/oil.ovm 5,231,344 4,144,272 1,087,072
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,959,504 4,144,272 2,815,232
lenny _tmp/ovm-build/bin/gcc/oil.ovm 5,401,600 4,144,272 1,257,328
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 7,156,696 4,144,272 3,012,424

Host and Compiler Details

host label host id
hoover hoover-94601b4f
lenny lenny-098a8e52
compiler label compiler id
gcc gcc-869a96ef
clang clang-dc55b135
gcc gcc-1c62c53f