Current benchmark data was generated on Wed Feb 08 2023, full log can be found HERE
CONTRIBUTIONS are WELCOME!
* -m in a file name stands for multi-threading or multi-processing
* -i in a file name stands for direct intrinsics usage. (Usage of simd intrinsics via libraries is not counted)
* -ffi in a file name stands for non-stdlib FFI usage
* (You may find time < time(user) + time(sys) for some non-parallelized programs, the overhead is from GC or JIT compiler, which are allowed to take advantage of multi-cores as that's more close to real-world scenarios.)
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 8-i.c | 331ms | 4.8ms | 1.2MB | 320ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 8-i.c | 398ms | 5.5ms | 1.3MB | 387ms | 0ms | gcc 12.2.0 |
c | 5.c | 403ms | 1.6ms | 1.3MB | 390ms | 0ms | gcc 12.2.0 |
c | 5.c | 422ms | 5.1ms | 1.4MB | 410ms | 0ms | clang 14.0.0 |
c | 8-i.c | 423ms | 7.5ms | 1.4MB | 410ms | 0ms | clang 14.0.0 |
c | 5.c | 426ms | 3.6ms | 1.0MB | 413ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 2.c | 433ms | 1.0ms | 1.2MB | 420ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 2.c | 467ms | 4.0ms | 1.4MB | 453ms | 0ms | clang 14.0.0 |
c | 2.c | 592ms | 1.5ms | 1.3MB | 580ms | 0ms | gcc 12.2.0 |
ocaml | 1.ml | 668ms | 18ms | 2.9MB | 653ms | 0ms | ocaml 5.0.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 8-i.c | 37ms | 1.3ms | 1.3MB | 27ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 8-i.c | 43ms | 1.7ms | 1.3MB | 30ms | 0ms | gcc 12.2.0 |
c | 5.c | 43ms | 0.8ms | 1.3MB | 30ms | 0ms | gcc 12.2.0 |
c | 5.c | 45ms | 1.0ms | 1.4MB | 37ms | 0ms | clang 14.0.0 |
c | 8-i.c | 45ms | 0.2ms | 1.4MB | 30ms | 0ms | clang 14.0.0 |
c | 2.c | 47ms | 0.6ms | 1.2MB | 40ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 2.c | 51ms | 2.5ms | 1.4MB | 40ms | 0ms | clang 14.0.0 |
c | 5.c | 53ms | 4.0ms | 1.0MB | 43ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 2.c | 63ms | 0.8ms | 1.3MB | 50ms | 0ms | gcc 12.2.0 |
ocaml | 1.ml | 74ms | 3.1ms | 2.9MB | 63ms | 0ms | ocaml 5.0.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 1.c | 1081ms | 39ms | 40.2MB | 1043ms | 23ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 1.c | 1125ms | 33ms | 41.0MB | 1087ms | 17ms | gcc 12.2.0 |
c | 1.c | 1130ms | 22ms | 40.9MB | 1090ms | 27ms | clang 14.0.0 |
ocaml | 1.ml | 2737ms | 6.5ms | 550.4MB | 2570ms | 153ms | ocaml 5.0.0 |
ocaml | 2.ml | 3263ms | 200ms | 19.0MB | 3240ms | 7ms | ocaml 5.0.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 1.c | 128ms | 0.8ms | 11.0MB | 117ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
c | 1.c | 143ms | 6.8ms | 11.7MB | 127ms | 0ms | clang 14.0.0 |
c | 1.c | 146ms | 0.9ms | 11.7MB | 130ms | 0ms | gcc 12.2.0 |
ocaml | 1.ml | 557ms | 15ms | 140.2MB | 507ms | 33ms | ocaml 5.0.0 |
ocaml | 2.ml | 811ms | 68ms | 9.1MB | 797ms | 0ms | ocaml 5.0.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 4-m.c | 1534ms | 9.7ms | 1.3MB | 2990ms | 3ms | gcc 12.2.0 |
c | 6-im.c | 1961ms | 20ms | 1.3MB | 3820ms | 0ms | gcc 12.2.0 |
c | 4-m.c | 1986ms | 14ms | 5.2MB | 3877ms | 0ms | clang 14.0.0 |
c | 6-im.c | 1990ms | 12ms | 3.2MB | 3890ms | 7ms | clang 14.0.0 |
c | 5-im.c | 1998ms | 19ms | 1.3MB | 3857ms | 0ms | gcc 12.2.0 |
c | 3-m.c | 2263ms | 5.2ms | 3.2MB | 4437ms | 0ms | clang 14.0.0 |
c | 3-m.c | 2269ms | 18ms | 1.3MB | 4430ms | 0ms | gcc 12.2.0 |
c | 5-im.c | 2451ms | 11ms | 3.3MB | 4797ms | 0ms | clang 14.0.0 |
ocaml | 2.ml | timeout | 0.0ms | 4.0MB | 4983ms | 0ms | ocaml 5.0.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 4-m.c | 397ms | 1.4ms | 1.3MB | 750ms | 0ms | gcc 12.2.0 |
c | 6-im.c | 469ms | 3.9ms | 1.3MB | 893ms | 0ms | gcc 12.2.0 |
c | 6-im.c | 499ms | 7.3ms | 3.3MB | 957ms | 0ms | clang 14.0.0 |
c | 4-m.c | 505ms | 1.7ms | 3.1MB | 963ms | 0ms | clang 14.0.0 |
c | 5-im.c | 516ms | 3.1ms | 1.3MB | 970ms | 3ms | gcc 12.2.0 |
c | 3-m.c | 581ms | 4.7ms | 1.3MB | 1117ms | 0ms | gcc 12.2.0 |
c | 3-m.c | 588ms | 9.4ms | 3.1MB | 1127ms | 0ms | clang 14.0.0 |
c | 5-im.c | 629ms | 5.3ms | 3.2MB | 1200ms | 3ms | clang 14.0.0 |
ocaml | 2.ml | 1802ms | 7.5ms | 3.6MB | 1787ms | 0ms | ocaml 5.0.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
c | 4-m.c | 111ms | 3.3ms | 1.3MB | 193ms | 0ms | gcc 12.2.0 |
c | 6-im.c | 127ms | 1.0ms | 1.3MB | 223ms | 0ms | gcc 12.2.0 |
c | 4-m.c | 136ms | 1.4ms | 3.3MB | 240ms | 0ms | clang 14.0.0 |
c | 6-im.c | 138ms | 0.8ms | 3.2MB | 250ms | 0ms | clang 14.0.0 |
c | 5-im.c | 140ms | 2.7ms | 1.3MB | 250ms | 0ms | gcc 12.2.0 |
c | 3-m.c | 158ms | 1.8ms | 3.5MB | 283ms | 0ms | clang 14.0.0 |
c | 3-m.c | 162ms | 8.8ms | 1.3MB | 287ms | 0ms | gcc 12.2.0 |
c | 5-im.c | 173ms | 6.0ms | 3.3MB | 300ms | 3ms | clang 14.0.0 |
ocaml | 2.ml | 475ms | 16ms | 3.4MB | 460ms | 0ms | ocaml 5.0.0 |