Current benchmark data was generated on Sat Nov 16 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 |
---|---|---|---|---|---|---|---|
java | 2.java | 470ms | 7.7ms | 638.0MB | 577ms | 97ms | openjdk 23 |
java | 2.java | 471ms | 26ms | 576.1MB | 553ms | 93ms | openjdk 21 |
java | 2-m.java | 471ms | 4.1ms | 646.9MB | 670ms | 100ms | graal/jvm 17.0.8 |
nim | 2.nim | 775ms | 7.6ms | 34.4MB | 753ms | 3ms | nim 2.2.0 |
nim | 2.nim | 952ms | 0.1ms | 34.7MB | 933ms | 3ms | nim/clang 2.2.0 |
java | 2.java | 1177ms | 9.4ms | 1047.0MB | 560ms | 777ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 75ms | 1.3ms | 5.5MB | 60ms | 0ms | nim 2.2.0 |
nim | 2.nim | 93ms | 2.7ms | 5.8MB | 80ms | 0ms | nim/clang 2.2.0 |
java | 2-m.java | 121ms | 3.3ms | 98.0MB | 150ms | 37ms | openjdk 23 |
java | 2.java | 123ms | 1.3ms | 167.1MB | 143ms | 37ms | openjdk 21 |
java | 2-m.java | 170ms | 4.2ms | 230.2MB | 260ms | 47ms | graal/jvm 17.0.8 |
java | 2.java | 309ms | 1.6ms | 242.5MB | 163ms | 200ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 1914ms | 216ms | 260.7MB | 7217ms | 110ms | openjdk 21 |
java | 1-m.java | 2372ms | 102ms | 240.5MB | 9013ms | 113ms | openjdk 23 |
java | 1-m.java | 2694ms | 224ms | 1170.6MB | 8560ms | 1093ms | openjdk/zgc 21 |
nim | 1.nim | timeout | 0.0ms | 548.2MB | 2457ms | 2090ms | nim 2.2.0 |
nim | 1.nim | timeout | 0.0ms | 556.6MB | 2397ms | 2143ms | nim/clang 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 413ms | 6.1ms | 91.0MB | 1353ms | 50ms | openjdk 23 |
java | 1-m.java | 422ms | 18ms | 122.6MB | 1387ms | 63ms | openjdk 21 |
java | 1-m.java | 641ms | 15ms | 216.0MB | 1743ms | 227ms | openjdk/zgc 21 |
nim | 1.nim | 4356ms | 13ms | 518.7MB | 2117ms | 1810ms | nim/clang 2.2.0 |
nim | 1.nim | 4483ms | 29ms | 519.4MB | 2187ms | 1867ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 185ms | 1.2ms | 1.5MB | 170ms | 0ms | nim 2.2.0 |
nim | 2.nim | 237ms | 2.1ms | 1.8MB | 220ms | 0ms | nim/clang 2.2.0 |
java | 4.java | 450ms | 4.7ms | 47.5MB | 527ms | 20ms | openjdk 21 |
java | 4.java | 453ms | 13ms | 106.3MB | 630ms | 47ms | graal/jvm 17.0.8 |
java | 4.java | 466ms | 10ms | 49.3MB | 560ms | 17ms | openjdk 23 |
java | 4.java | 560ms | 11ms | 45.2MB | 537ms | 127ms | openjdk/zgc 21 |
nim | 1.nim | 572ms | 3.7ms | 1.8MB | 427ms | 130ms | nim/clang 2.2.0 |
nim | 1.nim | 596ms | 1.5ms | 1.5MB | 473ms | 107ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 21ms | 0.6ms | 1.5MB | 10ms | 0ms | nim 2.2.0 |
nim | 2.nim | 26ms | 0.7ms | 1.8MB | 13ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 61ms | 0.8ms | 1.8MB | 47ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 63ms | 1.0ms | 1.5MB | 43ms | 3ms | nim 2.2.0 |
java | 4.java | 122ms | 1.2ms | 46.7MB | 167ms | 17ms | openjdk 21 |
java | 4-m.java | 126ms | 2.6ms | 47.9MB | 163ms | 27ms | openjdk 23 |
java | 4-m.java | 130ms | 3.9ms | 97.0MB | 177ms | 43ms | graal/jvm 17.0.8 |
java | 4.java | 243ms | 1.7ms | 45.8MB | 170ms | 130ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 1.1ms | 0.0ms | 1.9MB | 0ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 1.2ms | 0.1ms | 1.6MB | 0ms | 0ms | nim 2.2.0 |
java | 1.java | 64ms | 3.0ms | 58.5MB | 62ms | 24ms | graal/jvm 17.0.8 |
java | 1.java | 68ms | 5.7ms | 44.4MB | 68ms | 20ms | openjdk 23 |
java | 1.java | 71ms | 3.9ms | 43.8MB | 72ms | 22ms | openjdk 21 |
java | 1.java | 186ms | 3.8ms | 44.8MB | 76ms | 136ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 116ms | 1.8ms | 1.6MB | 110ms | 0ms | nim 2.2.0 |
nim | 2.nim | 117ms | 0.9ms | 1.6MB | 110ms | 0ms | nim/clang 2.2.0 |
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 | 334ms | 3.3ms | 1.6MB | 323ms | 0ms | nim/clang 2.2.0 |
nim | 2.nim | 338ms | 3.9ms | 1.4MB | 327ms | 0ms | nim 2.2.0 |
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 |
---|---|---|---|---|---|---|---|
nim | 1.nim | 386ms | 0.9ms | 4.8MB | 377ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 577ms | 2.3ms | 4.5MB | 567ms | 0ms | nim 2.2.0 |
java | 1b.java | 1154ms | 15ms | 54.4MB | 1260ms | 23ms | openjdk 21 |
java | 1b.java | 1163ms | 14ms | 105.3MB | 1310ms | 43ms | graal/jvm 17.0.8 |
java | 1b.java | 1171ms | 30ms | 55.3MB | 1293ms | 20ms | openjdk 23 |
java | 1.java | 1247ms | 10ms | 137.6MB | 1370ms | 33ms | graal/jvm 17.0.8 |
java | 1b.java | 1271ms | 9.1ms | 51.5MB | 1260ms | 140ms | openjdk/zgc 21 |
java | 1a.java | 1650ms | 7.6ms | 55.2MB | 1743ms | 20ms | openjdk 23 |
java | 1a.java | 1655ms | 3.6ms | 55.0MB | 1747ms | 23ms | openjdk 21 |
java | 1a.java | 1681ms | 13ms | 104.5MB | 1797ms | 40ms | graal/jvm 17.0.8 |
java | 1.java | 1687ms | 5.5ms | 202.5MB | 1747ms | 50ms | openjdk 21 |
java | 1.java | 1703ms | 7.0ms | 301.7MB | 1767ms | 43ms | openjdk 23 |
java | 1a.java | 1768ms | 3.5ms | 53.0MB | 1737ms | 143ms | openjdk/zgc 21 |
java | 1.java | 2351ms | 1.2ms | 855.0MB | 1790ms | 657ms | openjdk/zgc 21 |
java | 2.java | timeout | 0.0ms | 696.3MB | 5310ms | 127ms | openjdk 21 |
java | 2.java | timeout | 0.0ms | 744.4MB | 5267ms | 123ms | openjdk 23 |
java | 2.java | timeout | 0.0ms | 3358.5MB | 3360ms | 2000ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 19ms | 0.6ms | 1.9MB | 10ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 27ms | 0.8ms | 1.6MB | 20ms | 0ms | nim 2.2.0 |
java | 1b-m.java | 181ms | 7.7ms | 49.6MB | 280ms | 23ms | openjdk 21 |
java | 1b-m.java | 186ms | 2.0ms | 50.6MB | 293ms | 17ms | openjdk 23 |
java | 1-m.java | 187ms | 2.3ms | 81.8MB | 257ms | 33ms | openjdk 21 |
java | 1a-m.java | 189ms | 3.6ms | 52.2MB | 280ms | 23ms | openjdk 23 |
java | 1a-m.java | 189ms | 0.3ms | 50.1MB | 283ms | 30ms | openjdk 21 |
java | 1-m.java | 190ms | 3.3ms | 114.5MB | 283ms | 43ms | graal/jvm 17.0.8 |
java | 1-m.java | 191ms | 4.3ms | 86.8MB | 260ms | 33ms | openjdk 23 |
java | 1a-m.java | 215ms | 13ms | 102.3MB | 320ms | 43ms | graal/jvm 17.0.8 |
java | 1b-m.java | 227ms | 19ms | 108.0MB | 373ms | 47ms | graal/jvm 17.0.8 |
java | 1b.java | 296ms | 12ms | 47.5MB | 277ms | 137ms | openjdk/zgc 21 |
java | 1a.java | 312ms | 2.2ms | 49.8MB | 297ms | 137ms | openjdk/zgc 21 |
java | 1.java | 331ms | 6.3ms | 116.4MB | 257ms | 163ms | openjdk/zgc 21 |
java | 2-m.java | 552ms | 12ms | 598.8MB | 837ms | 87ms | openjdk 21 |
java | 2-m.java | 564ms | 13ms | 755.5MB | 837ms | 97ms | openjdk 23 |
java | 2.java | 1579ms | 6.4ms | 1347.9MB | 837ms | 1050ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 401ms | 6.3ms | 542.1MB | 497ms | 87ms | openjdk 23 |
java | 1.java | 413ms | 3.8ms | 677.9MB | 473ms | 107ms | openjdk 21 |
java | 1-m.java | 421ms | 36ms | 624.4MB | 640ms | 93ms | graal/jvm 17.0.8 |
nim | 1.nim | 560ms | 17ms | 34.4MB | 540ms | 0ms | nim 2.2.0 |
nim | 1.nim | 630ms | 12ms | 35.2MB | 613ms | 3ms | nim/clang 2.2.0 |
java | 1.java | 1080ms | 2.8ms | 968.3MB | 450ms | 743ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 118ms | 2.1ms | 9.6MB | 107ms | 0ms | nim 2.2.0 |
nim | 1.nim | 133ms | 5.2ms | 9.9MB | 120ms | 0ms | nim/clang 2.2.0 |
java | 1-m.java | 163ms | 0.5ms | 158.7MB | 240ms | 33ms | openjdk 23 |
java | 1-m.java | 165ms | 4.7ms | 206.5MB | 243ms | 30ms | openjdk 21 |
java | 1-m.java | 218ms | 8.1ms | 258.5MB | 370ms | 50ms | graal/jvm 17.0.8 |
java | 1.java | 415ms | 13ms | 342.0MB | 200ms | 287ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 320ms | 1.8ms | 1.8MB | 310ms | 0ms | nim 2.2.0 |
nim | 2.nim | 340ms | 1.1ms | 2.0MB | 330ms | 0ms | nim/clang 2.2.0 |
java | 1.java | 441ms | 0.5ms | 44.8MB | 473ms | 17ms | openjdk 21 |
java | 1.java | 443ms | 0.5ms | 48.2MB | 473ms | 20ms | openjdk 23 |
java | 1.java | 448ms | 4.1ms | 87.2MB | 477ms | 33ms | graal/jvm 17.0.8 |
java | 1.java | 561ms | 5.7ms | 44.9MB | 477ms | 143ms | openjdk/zgc 21 |
java | 2.java | 1229ms | 2.7ms | 655.9MB | 1363ms | 70ms | openjdk 21 |
java | 2.java | 1235ms | 8.6ms | 756.2MB | 1357ms | 87ms | openjdk 23 |
java | 2.java | 3343ms | 165ms | 2671.0MB | 1647ms | 1893ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 2.nim | 35ms | 1.2ms | 1.8MB | 27ms | 0ms | nim 2.2.0 |
nim | 2.nim | 37ms | 1.1ms | 2.0MB | 30ms | 0ms | nim/clang 2.2.0 |
java | 1.java | 112ms | 4.9ms | 45.5MB | 147ms | 13ms | openjdk 21 |
java | 1.java | 119ms | 3.9ms | 47.9MB | 147ms | 20ms | openjdk 23 |
java | 1.java | 124ms | 8.9ms | 87.2MB | 153ms | 30ms | graal/jvm 17.0.8 |
java | 1.java | 239ms | 6.7ms | 46.6MB | 147ms | 147ms | openjdk/zgc 21 |
java | 2-m.java | 296ms | 11ms | 364.7MB | 430ms | 60ms | openjdk 21 |
java | 2-m.java | 307ms | 7.8ms | 389.9MB | 443ms | 60ms | openjdk 23 |
java | 2.java | 699ms | 7.2ms | 532.4MB | 463ms | 420ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 270ms | 7.2ms | 41.5MB | 253ms | 0ms | nim 2.2.0 |
nim | 1.nim | 318ms | 4.7ms | 41.7MB | 303ms | 0ms | nim/clang 2.2.0 |
java | 1.java | 395ms | 4.3ms | 114.7MB | 450ms | 10ms | openjdk 21 |
java | 1.java | 396ms | 5.8ms | 118.3MB | 430ms | 27ms | openjdk 23 |
java | 1.java | 584ms | 3.9ms | 112.7MB | 483ms | 167ms | openjdk/zgc 21 |
java | 1-m.java | 629ms | 35ms | 236.3MB | 907ms | 80ms | graal/jvm 17.0.8 |
java | 2.java | 772ms | 4.5ms | 57.5MB | 827ms | 13ms | openjdk 21 |
java | 2.java | 777ms | 5.0ms | 60.4MB | 827ms | 20ms | openjdk 23 |
java | 2.java | 842ms | 1.8ms | 53.1MB | 773ms | 140ms | openjdk/zgc 21 |
java | 2-m.java | 1369ms | 54ms | 201.6MB | 2457ms | 100ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 54ms | 2.7ms | 11.5MB | 47ms | 0ms | nim 2.2.0 |
nim | 1.nim | 65ms | 2.6ms | 11.8MB | 53ms | 0ms | nim/clang 2.2.0 |
java | 1.java | 153ms | 3.0ms | 68.3MB | 190ms | 27ms | openjdk 23 |
java | 1.java | 160ms | 6.4ms | 64.9MB | 213ms | 23ms | openjdk 21 |
java | 1-m.java | 234ms | 25ms | 148.6MB | 330ms | 50ms | graal/jvm 17.0.8 |
java | 2.java | 259ms | 7.1ms | 49.9MB | 333ms | 7ms | openjdk 21 |
java | 2.java | 260ms | 4.7ms | 50.6MB | 310ms | 17ms | openjdk 23 |
java | 1.java | 283ms | 1.4ms | 61.3MB | 203ms | 150ms | openjdk/zgc 21 |
java | 2.java | 372ms | 8.8ms | 47.7MB | 300ms | 147ms | openjdk/zgc 21 |
java | 2-m.java | 509ms | 70ms | 152.0MB | 900ms | 67ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 1625ms | 3.5ms | 151.9MB | 1590ms | 13ms | nim/clang 2.2.0 |
nim | 1.nim | 1649ms | 6.6ms | 152.1MB | 1613ms | 20ms | nim 2.2.0 |
java | 3.java | timeout | 0.0ms | 409.5MB | 5413ms | 93ms | graal/jvm 17.0.8 |
java | 3.java | timeout | 0.0ms | 302.4MB | 5333ms | 47ms | openjdk 21 |
java | 3.java | timeout | 0.0ms | 305.1MB | 5333ms | 53ms | openjdk 23 |
java | 3.java | timeout | 0.0ms | 469.2MB | 4950ms | 310ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 172ms | 0.2ms | 16.8MB | 160ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 175ms | 1.9ms | 17.1MB | 160ms | 0ms | nim 2.2.0 |
java | 3-m.java | 790ms | 35ms | 183.2MB | 1160ms | 67ms | graal/jvm 17.0.8 |
java | 3-m.java | 807ms | 10ms | 132.0MB | 1210ms | 30ms | openjdk 21 |
java | 3-m.java | 831ms | 18ms | 132.5MB | 1220ms | 40ms | openjdk 23 |
java | 3.java | 947ms | 6.5ms | 135.2MB | 1103ms | 187ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 1961ms | 4.4ms | 47.6MB | 7457ms | 33ms | openjdk 21 |
java | 2-m.java | 1968ms | 4.8ms | 48.4MB | 7473ms | 27ms | openjdk 23 |
java | 2-m.java | 2079ms | 15ms | 45.4MB | 7450ms | 147ms | openjdk/zgc 21 |
java | 2-m.java | 2453ms | 9.0ms | 99.2MB | 8760ms | 27ms | graal/jvm 17.0.8 |
nim | 1.nim | 3574ms | 3.5ms | 1.6MB | 3563ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 3585ms | 8.7ms | 1.4MB | 3577ms | 0ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 584ms | 3.8ms | 48.4MB | 2047ms | 17ms | openjdk 23 |
java | 2-m.java | 584ms | 2.4ms | 47.5MB | 2050ms | 23ms | openjdk 21 |
java | 2-m.java | 710ms | 3.8ms | 47.5MB | 2070ms | 140ms | openjdk/zgc 21 |
java | 2-m.java | 739ms | 5.6ms | 96.7MB | 2483ms | 43ms | graal/jvm 17.0.8 |
nim | 1.nim | 899ms | 7.6ms | 1.5MB | 890ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 900ms | 3.3ms | 1.8MB | 890ms | 0ms | nim 2.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
nim | 1.nim | 225ms | 0.1ms | 1.5MB | 210ms | 0ms | nim/clang 2.2.0 |
nim | 1.nim | 228ms | 1.4ms | 1.3MB | 220ms | 0ms | nim 2.2.0 |
java | 2-m.java | 243ms | 3.7ms | 48.4MB | 690ms | 17ms | openjdk 23 |
java | 2-m.java | 252ms | 12ms | 48.0MB | 717ms | 23ms | openjdk 21 |
java | 2-m.java | 281ms | 21ms | 98.1MB | 813ms | 33ms | graal/jvm 17.0.8 |
java | 2-m.java | 358ms | 5.7ms | 47.1MB | 680ms | 140ms | openjdk/zgc 21 |