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.3 16.6
bash-4.4 gcc make 25.6 29.1
dash-0.5.9.1 gcc configure 2.7 3.3
dash-0.5.9.1 gcc make 3.1 3.3
oil-0.22.0 clang configure 0.7 1.0
oil-0.22.0 clang _bin/oil.ovm-dbg 5.2 7.8
oil-0.22.0 clang _bin/oil.ovm 13.4 21.4
oil-0.22.0 gcc configure 0.7 0.8
oil-0.22.0 gcc _bin/oil.ovm-dbg 7.3 7.6
oil-0.22.0 gcc _bin/oil.ovm 18.9 23.3
oils-for-unix-0.22.0 clang oils-for-unix 7.6 9.5
oils-for-unix-0.22.0 clang oils-for-unix.stripped 38.3 69.2
oils-for-unix-0.22.0 gcc oils-for-unix 12.1 12.0
oils-for-unix-0.22.0 gcc oils-for-unix.stripped 32.9 41.3

Native Binary Size

binary compiler host hoover host lenny
oils-for-unix clang 8,707,592 8,656,728
oils-for-unix.stripped clang 3,300,920 3,349,968
oils-for-unix gcc 10,249,176 10,380,032
oils-for-unix.stripped gcc 2,149,648 2,070,240

OVM Binary Size

The oil binary has two portions:

host label path num bytes bytecode size native code size
lenny _tmp/ovm-build/bin/clang/oil.ovm 5,880,586 4,822,098 1,058,488
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 7,573,306 4,822,098 2,751,208
lenny _tmp/ovm-build/bin/gcc/oil.ovm 6,050,818 4,822,098 1,228,720
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 7,772,650 4,822,098 2,950,552
hoover _tmp/ovm-build/bin/clang/oil.ovm 5,888,866 4,822,098 1,066,768
hoover _tmp/ovm-build/bin/clang/oil.ovm-dbg 7,573,250 4,822,098 2,751,152
hoover _tmp/ovm-build/bin/gcc/oil.ovm 5,908,978 4,822,098 1,086,880
hoover _tmp/ovm-build/bin/gcc/oil.ovm-dbg 7,572,026 4,822,098 2,749,928

Host and Compiler Details

host label host id
lenny lenny-1ff4d011
hoover hoover-ecba003d
compiler label compiler id
gcc gcc-1c62c53f
clang clang-dc55b135
gcc gcc-869a96ef