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 27.9 16.8
bash-4.4 gcc make 37.9 32.4
dash-0.5.9.1 gcc configure 5.0 3.3
dash-0.5.9.1 gcc make 4.9 3.5
oil-0.16.0 clang configure 1.4 0.8
oil-0.16.0 clang _bin/oil.ovm-dbg 11.7 8.0
oil-0.16.0 clang _bin/oil.ovm 27.4 22.3
oil-0.16.0 gcc configure 1.3 0.8
oil-0.16.0 gcc _bin/oil.ovm-dbg 12.5 8.6
oil-0.16.0 gcc _bin/oil.ovm 30.9 25.0
oils-for-unix-0.16.0 clang oils-for-unix 12.1 9.8
oils-for-unix-0.16.0 clang oils-for-unix.stripped 35.4 33.2
oils-for-unix-0.16.0 gcc oils-for-unix 14.0 11.6
oils-for-unix-0.16.0 gcc oils-for-unix.stripped 29.4 29.0

Native Binary Size

binary compiler host broome host lenny
oils-for-unix clang 6,750,432 6,750,432
oils-for-unix.stripped clang 1,666,192 1,666,192
oils-for-unix gcc 8,087,304 8,087,304
oils-for-unix.stripped gcc 1,419,480 1,419,480

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,968,657 3,869,177 1,099,480
broome _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,704,129 3,869,177 2,834,952
broome _tmp/ovm-build/bin/gcc/oil.ovm 5,126,625 3,869,177 1,257,448
broome _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,883,225 3,869,177 3,014,048
lenny _tmp/ovm-build/bin/clang/oil.ovm 4,968,665 3,869,177 1,099,488
lenny _tmp/ovm-build/bin/clang/oil.ovm-dbg 6,704,017 3,869,177 2,834,840
lenny _tmp/ovm-build/bin/gcc/oil.ovm 5,126,633 3,869,177 1,257,456
lenny _tmp/ovm-build/bin/gcc/oil.ovm-dbg 6,882,913 3,869,177 3,013,736

Host and Compiler Details

host label host id
broome broome-76a68468
lenny lenny-098a8e52
compiler label compiler id
gcc gcc-1c62c53f
clang clang-dc55b135