Current benchmark data was generated on Tue Dec 31 2024, 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 |
---|---|---|---|---|---|---|---|
kotlin | 1.kt | 455ms | 16ms | 575.5MB | 540ms | 63ms | kotlin/jvm 21 |
nim | 2.nim | 741ms | 8.3ms | 34.9MB | 727ms | 0ms | nim 2.2.0 |
nim | 2.nim | 919ms | 4.1ms | 34.7MB | 900ms | 7ms | nim/clang 2.2.0 |
kotlin | 1-m.kt | 2928ms | 6.8ms | 248.5MB | 4967ms | 627ms | kotlin/native 1.8.21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 67ms | 0.5ms | 5.5MB | 57ms | 0ms | nim 2.2.0 |
nim | 2.nim | 85ms | 2.2ms | 5.8MB | 77ms | 0ms | nim/clang 2.2.0 |
kotlin | 1.kt | 95ms | 2.4ms | 158.2MB | 103ms | 23ms | kotlin/jvm 21 |
kotlin | 1-m.kt | 257ms | 6.2ms | 32.6MB | 400ms | 63ms | kotlin/native 1.8.21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
kotlin | 2-m.kt | 1799ms | 182ms | 235.5MB | 6667ms | 90ms | kotlin/jvm 21 |
kotlin | 1.kt | 2058ms | 23ms | 217.3MB | 2833ms | 57ms | kotlin/jvm 21 |
kotlin | 1.kt | timeout | 0.0ms | 14.8MB | 6030ms | 500ms | kotlin/native 1.8.21 |
kotlin | 2-m.kt | timeout | 0.0ms | 52.1MB | 19097ms | 113ms | kotlin/native 1.8.21 |
nim | 1.nim | timeout | 0.0ms | 561.4MB | 2450ms | 2080ms | nim 2.2.0 |
nim | 1.nim | timeout | 0.0ms | 570.6MB | 2543ms | 1987ms | nim/clang 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
kotlin | 2-m.kt | 366ms | 8.9ms | 38.2MB | 1350ms | 13ms | kotlin/native 1.8.21 |
kotlin | 1-m.kt | 450ms | 15ms | 73.3MB | 1017ms | 37ms | kotlin/jvm 21 |
kotlin | 1.kt | 646ms | 7.8ms | 10.8MB | 807ms | 53ms | kotlin/native 1.8.21 |
kotlin | 2-m.kt | 757ms | 71ms | 99.7MB | 2643ms | 70ms | kotlin/jvm 21 |
nim | 1.nim | 4127ms | 12ms | 519.8MB | 2037ms | 1663ms | nim/clang 2.2.0 |
nim | 1.nim | 4262ms | 22ms | 519.3MB | 2010ms | 1827ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 174ms | 1.9ms | 1.5MB | 160ms | 0ms | nim 2.2.0 |
nim | 2.nim | 226ms | 6.1ms | 1.8MB | 213ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 542ms | 6.4ms | 1.8MB | 420ms | 110ms | nim/clang 2.2.0 |
nim | 1.nim | 569ms | 4.4ms | 1.5MB | 470ms | 87ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 1.0ms | 0.0ms | 1.6MB | 0ms | 0ms | nim 2.2.0 |
nim | 1.nim | 1.1ms | 0.1ms | 1.8MB | 0ms | 0ms | nim/clang 2.2.0 |
kotlin | 1.kt | 2.3ms | 0.2ms | 4.7MB | 0ms | 0ms | kotlin/native 1.8.21 |
kotlin | 1.kt | 55ms | 4.2ms | 47.4MB | 46ms | 14ms | kotlin/jvm 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 930ms | 5.9ms | 99.3MB | 260ms | 647ms | nim 2.2.0 |
nim | 1.nim | 934ms | 16ms | 99.4MB | 237ms | 673ms | nim/clang 2.2.0 |
kotlin | 2-m.kt | 4837ms | 51ms | 400.1MB | 14360ms | 2470ms | kotlin/jvm 21 |
kotlin | 1.kt | timeout | 0.0ms | 405.3MB | 16127ms | 2747ms | kotlin/jvm 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 152ms | 5.5ms | 18.1MB | 30ms | 107ms | nim/clang 2.2.0 |
nim | 1.nim | 155ms | 3.4ms | 18.2MB | 37ms | 100ms | nim 2.2.0 |
kotlin | 1-m.kt | 2173ms | 206ms | 269.1MB | 6403ms | 597ms | kotlin/jvm 21 |
kotlin | 2.kt | 2226ms | 288ms | 241.9MB | 2337ms | 253ms | kotlin/jvm 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 105ms | 4.1ms | 1.6MB | 97ms | 0ms | nim/clang 2.2.0 |
nim | 2.nim | 108ms | 2.2ms | 1.8MB | 100ms | 0ms | nim 2.2.0 |
kotlin | 1-m.kt | 172ms | 3.8ms | 94.9MB | 283ms | 30ms | kotlin/jvm 21 |
kotlin | 2-m.kt | 188ms | 5.4ms | 102.2MB | 397ms | 30ms | kotlin/jvm 21 |
kotlin | 2.kt | 285ms | 1.3ms | 7.8MB | 413ms | 3ms | kotlin/native 1.8.21 |
kotlin | 1.kt | 501ms | 15ms | 7.8MB | 600ms | 7ms | kotlin/native 1.8.21 |
nim | 1.nim | timeout | 0.0ms | 1.3MB | 4987ms | 0ms | nim 2.2.0 |
nim | 1.nim | timeout | 0.0ms | 1.5MB | 4990ms | 0ms | nim/clang 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
kotlin | 2-m.kt | 298ms | 25ms | 214.4MB | 503ms | 57ms | kotlin/jvm 21 |
nim | 2.nim | 307ms | 6.6ms | 1.6MB | 297ms | 0ms | nim/clang 2.2.0 |
kotlin | 1.kt | 308ms | 0.6ms | 204.7MB | 413ms | 40ms | kotlin/jvm 21 |
nim | 2.nim | 319ms | 3.0ms | 1.4MB | 310ms | 0ms | nim 2.2.0 |
kotlin | 2.kt | 863ms | 8.2ms | 7.6MB | 1240ms | 50ms | kotlin/native 1.8.21 |
kotlin | 1.kt | 1456ms | 8.2ms | 7.9MB | 1763ms | 17ms | kotlin/native 1.8.21 |
nim | 1.nim | timeout | 0.0ms | 1.3MB | 4990ms | 0ms | nim 2.2.0 |
nim | 1.nim | timeout | 0.0ms | 1.5MB | 4990ms | 0ms | nim/clang 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 46ms | 1.6ms | 1.8MB | 40ms | 0ms | nim/clang 2.2.0 |
nim | 2.nim | 49ms | 1.9ms | 1.5MB | 40ms | 0ms | nim 2.2.0 |
kotlin | 1-m.kt | 132ms | 1.5ms | 92.4MB | 250ms | 20ms | kotlin/jvm 21 |
kotlin | 2.kt | 134ms | 3.9ms | 5.7MB | 190ms | 0ms | kotlin/native 1.8.21 |
kotlin | 2-m.kt | 159ms | 9.9ms | 90.8MB | 307ms | 27ms | kotlin/jvm 21 |
kotlin | 1.kt | 162ms | 4.0ms | 5.8MB | 207ms | 0ms | kotlin/native 1.8.21 |
nim | 1.nim | 463ms | 5.7ms | 1.5MB | 450ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 467ms | 5.4ms | 1.3MB | 453ms | 0ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
kotlin | 1.kt | 329ms | 3.6ms | 677.6MB | 360ms | 70ms | kotlin/jvm 21 |
nim | 1.nim | 520ms | 10ms | 34.9MB | 497ms | 7ms | nim 2.2.0 |
nim | 1.nim | 578ms | 6.2ms | 34.7MB | 553ms | 10ms | nim/clang 2.2.0 |
kotlin | 1-m.kt | 1426ms | 20ms | 136.5MB | 2193ms | 330ms | kotlin/native 1.8.21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 112ms | 2.9ms | 9.6MB | 100ms | 0ms | nim 2.2.0 |
kotlin | 1.kt | 122ms | 2.0ms | 206.5MB | 157ms | 23ms | kotlin/jvm 21 |
nim | 1.nim | 124ms | 3.0ms | 9.9MB | 110ms | 0ms | nim/clang 2.2.0 |
kotlin | 1-m.kt | 283ms | 1.7ms | 40.4MB | 410ms | 57ms | kotlin/native 1.8.21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 302ms | 2.8ms | 1.8MB | 290ms | 0ms | nim 2.2.0 |
nim | 2.nim | 330ms | 8.5ms | 2.0MB | 320ms | 0ms | nim/clang 2.2.0 |
kotlin | 1n.kt | 386ms | 8.6ms | 4.7MB | 373ms | 0ms | kotlin/native 1.8.21 |
kotlin | 1.kt | 422ms | 3.5ms | 49.7MB | 463ms | 13ms | kotlin/jvm 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 32ms | 0.5ms | 1.8MB | 20ms | 0ms | nim 2.2.0 |
nim | 2.nim | 35ms | 0.9ms | 2.0MB | 23ms | 0ms | nim/clang 2.2.0 |
kotlin | 1n.kt | 43ms | 0.8ms | 4.6MB | 30ms | 0ms | kotlin/native 1.8.21 |
kotlin | 1.kt | 112ms | 0.7ms | 49.4MB | 150ms | 17ms | kotlin/jvm 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 1541ms | 6.9ms | 152.3MB | 1513ms | 13ms | nim/clang 2.2.0 |
nim | 1.nim | 1567ms | 8.6ms | 151.5MB | 1530ms | 23ms | nim 2.2.0 |
kotlin | 1.kt | timeout | 0.0ms | 171.4MB | 5370ms | 43ms | kotlin/jvm 21 |
kotlin | 1n.kt | timeout | 0.0ms | 278.9MB | 5463ms | 463ms | kotlin/native 1.8.21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 162ms | 0.2ms | 17.6MB | 143ms | 3ms | nim/clang 2.2.0 |
nim | 1.nim | 163ms | 1.8ms | 17.4MB | 153ms | 0ms | nim 2.2.0 |
kotlin | 1-m.kt | 759ms | 8.2ms | 133.8MB | 1143ms | 27ms | kotlin/jvm 21 |
kotlin | 1n.kt | 2968ms | 26ms | 65.1MB | 3653ms | 3ms | kotlin/native 1.8.21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 3383ms | 20ms | 1.6MB | 3370ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 3439ms | 35ms | 1.4MB | 3430ms | 0ms | nim 2.2.0 |