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 |
---|---|---|---|---|---|---|---|
zig | 2-m.zig | 1401ms | 16ms | 1.1MB | 2713ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 3-i.zig | 1699ms | 3.5ms | 1.0MB | 1687ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 2.zig | 2854ms | 1.2ms | 1.0MB | 2843ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 1.zig | 3856ms | 30ms | 1.0MB | 3847ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2-m.zig | 134ms | 1.0ms | 1.1MB | 233ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 3-i.zig | 145ms | 0.7ms | 1.0MB | 130ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 2.zig | 242ms | 0.2ms | 1.0MB | 230ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 1.zig | 323ms | 0.7ms | 1.0MB | 310ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 1.zig | 2.1ms | 0.7ms | 0.9MB | 0ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
c | 1.c | 2.4ms | 0.7ms | 1.4MB | 0ms | 0ms | clang 14.0.0 |
c | 1.c | 2.6ms | 0.8ms | 1.3MB | 0ms | 0ms | gcc 12.2.0 |
c | 1.c | 3.4ms | 2.1ms | 1.0MB | 0ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 1.zig | 59ms | 1.7ms | 2.8MB | 50ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2.zig | 308ms | 5.8ms | 1.1MB | 293ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 1.zig | 462ms | 6.7ms | 1.0MB | 453ms | 0ms | zig 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 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2.zig | 35ms | 0.6ms | 1.0MB | 27ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 1.zig | 50ms | 1.5ms | 1.0MB | 40ms | 0ms | zig 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 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2.zig | 439ms | 0.8ms | 6.0MB | 423ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
zig | 1.zig | 943ms | 42ms | 40.1MB | 917ms | 10ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2.zig | 97ms | 2.8ms | 2.1MB | 87ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
c | 1.c | 128ms | 0.8ms | 11.0MB | 117ms | 0ms | zigcc 0.11.0-dev.1580+a5b34a61a |
zig | 1.zig | 128ms | 1.0ms | 10.9MB | 110ms | 0ms | zig 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 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2-m.zig | 1088ms | 3.9ms | 1.2MB | 2083ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 2.zig | 2072ms | 6.8ms | 1.0MB | 2063ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 1.zig | 4631ms | 11ms | 1.0MB | 4617ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2-m.zig | 284ms | 2.0ms | 1.2MB | 510ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 2.zig | 525ms | 10ms | 1.0MB | 513ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 1.zig | 1156ms | 3.2ms | 1.0MB | 1143ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 2-m.zig | 79ms | 1.5ms | 1.1MB | 127ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 2.zig | 136ms | 2.1ms | 1.6MB | 127ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |
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 |
zig | 1.zig | 294ms | 0.5ms | 1.0MB | 280ms | 0ms | zig 0.11.0-dev.1580+a5b34a61a |