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.4 16.4
bash-4.4 gcc make 25.6 27.5
dash-0.5.9.1 gcc configure 2.7 3.2
dash-0.5.9.1 gcc make 3.2 3.2
oil-0.17.0 clang configure 0.6 0.7
oil-0.17.0 clang _bin/oil.ovm-dbg 5.7 7.4
oil-0.17.0 clang _bin/oil.ovm 14.3 19.9
oil-0.17.0 gcc configure 0.6 0.7
oil-0.17.0 gcc _bin/oil.ovm-dbg 7.2 7.5
oil-0.17.0 gcc _bin/oil.ovm 19.9 22.9
oils-for-unix-0.17.0 clang oils-for-unix 6.6 9.4
oils-for-unix-0.17.0 clang oils-for-unix.stripped 22.1 32.1
oils-for-unix-0.17.0 gcc oils-for-unix 8.7 10.6
oils-for-unix-0.17.0 gcc oils-for-unix.stripped 24.7 28.0

Native Binary Size

binary compiler host hoover host lenny
oils-for-unix clang 7,130,640 7,075,984
oils-for-unix.stripped clang 1,746,088 1,741,888
oils-for-unix gcc 8,335,688 8,412,576
oils-for-unix.stripped gcc 1,518,632 1,508,856

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,027,784 3,940,536 1,087,248
hoover _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,756,264 3,940,536 2,815,728
hoover _tmp/ovm-build/bin/gcc/oil.ovm 5,052,016 3,940,536 1,111,480
hoover _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,759,416 3,940,536 2,818,880
lenny _tmp/ovm-build/bin/clang/oil.ovm 5,027,704 3,940,536 1,087,168
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,756,424 3,940,536 2,815,888
lenny _tmp/ovm-build/bin/gcc/oil.ovm 5,197,960 3,940,536 1,257,424
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,953,056 3,940,536 3,012,520

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