Current benchmark data was generated on Wed Jan 22 2025, 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 | 467ms | 1.5ms | 646.0MB | 567ms | 97ms | openjdk 23 |
java | 2-m.java | 468ms | 12ms | 645.0MB | 687ms | 90ms | graal/jvm 17.0.8 |
java | 2.java | 498ms | 2.1ms | 572.9MB | 563ms | 113ms | openjdk 21 |
javascript | 1-m.js | 950ms | 61ms | 187.4MB | 1437ms | 247ms | bun 1.1.45 |
java | 2.java | 1170ms | 8.1ms | 1044.5MB | 570ms | 760ms | openjdk/zgc 21 |
javascript | 1-m.js | 1251ms | 9.3ms | 276.4MB | 2177ms | 160ms | node 23.6.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 95ms | 0.8ms | 79.4MB | 77ms | 23ms | bun 1.1.45 |
java | 2.java | 126ms | 6.8ms | 96.2MB | 147ms | 40ms | openjdk 23 |
javascript | 1.js | 127ms | 2.0ms | 82.4MB | 117ms | 33ms | node 23.6.0 |
java | 2.java | 127ms | 1.9ms | 168.9MB | 160ms | 23ms | openjdk 21 |
java | 2-m.java | 150ms | 3.7ms | 231.2MB | 210ms | 67ms | graal/jvm 17.0.8 |
java | 2.java | 307ms | 4.8ms | 241.9MB | 163ms | 197ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 1594ms | 14ms | 93.6MB | 1670ms | 63ms | node 23.6.0 |
java | 1-m.java | 1791ms | 170ms | 260.0MB | 6683ms | 143ms | openjdk 21 |
java | 1-m.java | 2251ms | 168ms | 241.1MB | 8537ms | 117ms | openjdk 23 |
javascript | 1.js | 2295ms | 49ms | 100.5MB | 2313ms | 70ms | bun 1.1.45 |
java | 1-m.java | 2654ms | 330ms | 1215.5MB | 8333ms | 1107ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 156ms | 1.2ms | 76.5MB | 137ms | 23ms | node 23.6.0 |
javascript | 1.js | 187ms | 1.2ms | 86.5MB | 203ms | 30ms | bun 1.1.45 |
java | 1-m.java | 394ms | 20ms | 91.7MB | 1290ms | 50ms | openjdk 23 |
java | 1-m.java | 424ms | 15ms | 123.3MB | 1383ms | 63ms | openjdk 21 |
java | 1-m.java | 649ms | 27ms | 221.3MB | 1693ms | 260ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 277ms | 0.8ms | 67.3MB | 293ms | 23ms | node 23.6.0 |
java | 1-m.java | 611ms | 50ms | 226.3MB | 1660ms | 63ms | openjdk 23 |
java | 1-m.java | 630ms | 48ms | 412.9MB | 1207ms | 117ms | graal/jvm 17.0.8 |
java | 1-m.java | 681ms | 6.9ms | 267.6MB | 1783ms | 80ms | openjdk 21 |
javascript | 1.js | 714ms | 5.9ms | 77.1MB | 693ms | 17ms | bun 1.1.45 |
java | 1-m.java | 943ms | 32ms | 528.5MB | 1630ms | 413ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 126ms | 0.7ms | 65.5MB | 140ms | 17ms | node 23.6.0 |
java | 1-m.java | 302ms | 19ms | 231.6MB | 593ms | 67ms | graal/jvm 17.0.8 |
java | 1-m.java | 329ms | 2.1ms | 177.6MB | 883ms | 63ms | openjdk 21 |
java | 1-m.java | 373ms | 21ms | 127.4MB | 1010ms | 43ms | openjdk 23 |
java | 1-m.java | 513ms | 35ms | 215.4MB | 1007ms | 213ms | openjdk/zgc 21 |
javascript | 1.js | 525ms | 2.3ms | 66.8MB | 493ms | 23ms | bun 1.1.45 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 13ms | 0.5ms | 32.3MB | 0ms | 10ms | bun 1.1.45 |
javascript | 1.js | 31ms | 0.6ms | 52.0MB | 14ms | 8ms | node 23.6.0 |
java | 1.java | 64ms | 1.6ms | 54.9MB | 66ms | 18ms | graal/jvm 17.0.8 |
java | 1.java | 71ms | 6.1ms | 43.9MB | 80ms | 16ms | openjdk 21 |
java | 1.java | 72ms | 6.3ms | 44.7MB | 70ms | 20ms | openjdk 23 |
java | 1.java | 186ms | 4.8ms | 44.6MB | 90ms | 126ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1-m.bun.js | 363ms | 16ms | 71.3MB | 133ms | 420ms | bun 1.1.45 |
javascript | 1.js | 3147ms | 48ms | 195.6MB | 2993ms | 1487ms | node 23.6.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.bun.js | 127ms | 14ms | 54.5MB | 30ms | 93ms | bun 1.1.45 |
javascript | 1.js | 382ms | 1.7ms | 84.8MB | 360ms | 103ms | node 23.6.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 360ms | 0.4ms | 182.1MB | 330ms | 70ms | bun 1.1.45 |
javascript | 1.js | 701ms | 3.1ms | 206.6MB | 800ms | 90ms | node 23.6.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 85ms | 1.9ms | 68.8MB | 57ms | 20ms | bun 1.1.45 |
javascript | 1.js | 111ms | 0.8ms | 79.0MB | 100ms | 20ms | node 23.6.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 2.js | 307ms | 1.4ms | 66.8MB | 297ms | 13ms | node 23.6.0 |
javascript | 1.js | 559ms | 2.7ms | 64.5MB | 543ms | 13ms | node 23.6.0 |
javascript | 2.js | 640ms | 0.8ms | 127.1MB | 687ms | 63ms | bun 1.1.45 |
javascript | 1.js | 826ms | 4.8ms | 110.7MB | 910ms | 77ms | bun 1.1.45 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 2.js | 840ms | 3.3ms | 72.4MB | 823ms | 17ms | node 23.6.0 |
javascript | 1.js | 1586ms | 6.0ms | 71.4MB | 1567ms | 17ms | node 23.6.0 |
javascript | 2.js | 1816ms | 29ms | 122.9MB | 1960ms | 60ms | bun 1.1.45 |
javascript | 1.js | 2536ms | 140ms | 112.1MB | 2847ms | 137ms | bun 1.1.45 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 164ms | 2.5ms | 61.8MB | 150ms | 7ms | node 23.6.0 |
javascript | 2.js | 164ms | 0.9ms | 60.8MB | 157ms | 10ms | node 23.6.0 |
javascript | 1.js | 323ms | 3.2ms | 133.9MB | 347ms | 83ms | bun 1.1.45 |
javascript | 2.js | 359ms | 16ms | 126.8MB | 380ms | 60ms | bun 1.1.45 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 397ms | 2.9ms | 630.4MB | 593ms | 97ms | graal/jvm 17.0.8 |
java | 1.java | 401ms | 1.0ms | 537.3MB | 483ms | 103ms | openjdk 23 |
java | 1.java | 401ms | 4.9ms | 679.9MB | 467ms | 90ms | openjdk 21 |
javascript | 1-m.js | 485ms | 10ms | 141.8MB | 623ms | 127ms | bun 1.1.45 |
javascript | 1.js | 526ms | 3.4ms | 134.5MB | 583ms | 83ms | node 23.6.0 |
java | 1.java | 1072ms | 7.5ms | 966.2MB | 473ms | 723ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 119ms | 1.0ms | 87.0MB | 107ms | 27ms | bun 1.1.45 |
javascript | 1.js | 157ms | 2.1ms | 102.3MB | 137ms | 47ms | node 23.6.0 |
java | 1-m.java | 164ms | 3.1ms | 207.5MB | 237ms | 40ms | openjdk 21 |
java | 1-m.java | 164ms | 2.2ms | 160.1MB | 243ms | 37ms | openjdk 23 |
java | 1-m.java | 207ms | 1.6ms | 255.6MB | 343ms | 57ms | graal/jvm 17.0.8 |
java | 1.java | 432ms | 23ms | 343.8MB | 200ms | 307ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 441ms | 1.3ms | 45.2MB | 483ms | 17ms | openjdk 21 |
java | 1.java | 445ms | 3.9ms | 48.2MB | 477ms | 23ms | openjdk 23 |
java | 1.java | 445ms | 1.7ms | 87.1MB | 467ms | 30ms | graal/jvm 17.0.8 |
javascript | 6.js | 459ms | 2.4ms | 59.7MB | 447ms | 7ms | node 23.6.0 |
java | 1.java | 565ms | 2.0ms | 44.6MB | 497ms | 127ms | openjdk/zgc 21 |
javascript | 6.js | 658ms | 0.3ms | 45.6MB | 653ms | 7ms | bun 1.1.45 |
java | 2.java | 1252ms | 33ms | 588.1MB | 1390ms | 83ms | openjdk 21 |
java | 2.java | 1255ms | 8.3ms | 753.6MB | 1367ms | 107ms | openjdk 23 |
java | 2.java | 3285ms | 56ms | 2475.9MB | 1647ms | 1840ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6.js | 77ms | 1.0ms | 59.8MB | 60ms | 10ms | node 23.6.0 |
javascript | 6.js | 85ms | 2.1ms | 45.4MB | 83ms | 3ms | bun 1.1.45 |
java | 1.java | 118ms | 1.2ms | 45.1MB | 153ms | 20ms | openjdk 21 |
java | 1.java | 123ms | 1.7ms | 47.9MB | 153ms | 20ms | openjdk 23 |
java | 1.java | 123ms | 6.2ms | 87.3MB | 157ms | 27ms | graal/jvm 17.0.8 |
java | 1.java | 237ms | 4.3ms | 44.7MB | 157ms | 137ms | openjdk/zgc 21 |
java | 2-m.java | 299ms | 2.8ms | 344.9MB | 437ms | 53ms | openjdk 21 |
java | 2-m.java | 311ms | 5.4ms | 346.3MB | 443ms | 70ms | openjdk 23 |
java | 2.java | 689ms | 16ms | 525.9MB | 463ms | 403ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 2555ms | 27ms | 63.2MB | 2557ms | 17ms | node 23.6.0 |
javascript | 1.js | 2692ms | 12ms | 84.3MB | 2700ms | 53ms | bun 1.1.45 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 675ms | 1.8ms | 61.9MB | 673ms | 20ms | node 23.6.0 |
javascript | 1.js | 710ms | 3.9ms | 83.8MB | 703ms | 33ms | bun 1.1.45 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 3183ms | 10ms | 374.6MB | 3637ms | 103ms | graal/jvm 17.0.8 |
java | 1.java | 3692ms | 33ms | 412.3MB | 4563ms | 97ms | openjdk 23 |
java | 1.java | 3696ms | 87ms | 425.5MB | 4553ms | 100ms | openjdk 21 |
javascript | 3.js | 4723ms | 215ms | 92.1MB | 4707ms | 20ms | node 23.6.0 |
java | 1.java | timeout | 0.0ms | 1870.9MB | 4497ms | 1297ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 874ms | 7.9ms | 373.7MB | 1197ms | 107ms | graal/jvm 17.0.8 |
java | 1-m.java | 1011ms | 13ms | 402.8MB | 1770ms | 103ms | openjdk 23 |
java | 1-m.java | 1012ms | 39ms | 351.1MB | 1780ms | 100ms | openjdk 21 |
javascript | 3.js | 1013ms | 23ms | 74.3MB | 990ms | 17ms | node 23.6.0 |
java | 1.java | 2009ms | 52ms | 1383.0MB | 1723ms | 1053ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 1963ms | 2.5ms | 47.3MB | 7453ms | 20ms | openjdk 21 |
java | 2-m.java | 1965ms | 7.5ms | 48.6MB | 7467ms | 17ms | openjdk 23 |
java | 2-m.java | 2080ms | 2.7ms | 45.3MB | 7453ms | 143ms | openjdk/zgc 21 |
javascript | 6-m.js | 2158ms | 5.7ms | 116.7MB | 8230ms | 53ms | node 23.6.0 |
java | 2-m.java | 2480ms | 17ms | 98.9MB | 8800ms | 40ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 592ms | 8.0ms | 47.7MB | 2083ms | 13ms | openjdk 21 |
java | 2-m.java | 592ms | 6.7ms | 48.8MB | 2033ms | 30ms | openjdk 23 |
javascript | 6-m.js | 642ms | 4.1ms | 114.0MB | 2290ms | 50ms | node 23.6.0 |
java | 2-m.java | 712ms | 1.7ms | 45.3MB | 2087ms | 133ms | openjdk/zgc 21 |
java | 2-m.java | 739ms | 6.2ms | 98.0MB | 2493ms | 37ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 246ms | 3.6ms | 48.5MB | 717ms | 20ms | openjdk 23 |
java | 2-m.java | 247ms | 13ms | 47.4MB | 710ms | 23ms | openjdk 21 |
javascript | 6-m.js | 263ms | 2.0ms | 113.2MB | 823ms | 40ms | node 23.6.0 |
java | 2-m.java | 285ms | 13ms | 96.7MB | 827ms | 40ms | graal/jvm 17.0.8 |
java | 2-m.java | 355ms | 6.7ms | 47.3MB | 680ms | 137ms | openjdk/zgc 21 |