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 |
java | 2.java | 1177ms | 9.4ms | 1047.0MB | 560ms | 777ms | openjdk/zgc 21 |
ocaml | 1.ml | 3001ms | 12ms | 157.2MB | 2907ms | 80ms | ocaml 5.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
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 |
ocaml | 1.ml | 214ms | 0.7ms | 19.2MB | 193ms | 7ms | ocaml 5.2.0 |
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 | 883ms | 4.1ms | 100.1MB | 3233ms | 47ms | graal/jvm 17.0.8 |
java | 1-m.java | 959ms | 4.0ms | 48.5MB | 3550ms | 30ms | openjdk 21 |
java | 1-m.java | 977ms | 6.4ms | 50.1MB | 3600ms | 17ms | openjdk 23 |
java | 1-m.java | 1019ms | 44ms | 46.0MB | 3303ms | 137ms | openjdk/zgc 21 |
ocaml | 2.ml | 2922ms | 17ms | 5.0MB | 2910ms | 0ms | ocaml 5.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 185ms | 12ms | 48.4MB | 490ms | 30ms | openjdk 21 |
java | 1-m.java | 195ms | 8.3ms | 50.1MB | 497ms | 30ms | openjdk 23 |
java | 1-m.java | 198ms | 13ms | 102.1MB | 540ms | 43ms | graal/jvm 17.0.8 |
ocaml | 2.ml | 246ms | 1.5ms | 5.0MB | 233ms | 0ms | ocaml 5.2.0 |
java | 1-m.java | 300ms | 5.1ms | 45.9MB | 493ms | 137ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 6.ml | 346ms | 0.5ms | 24.9MB | 333ms | 0ms | ocaml 5.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 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 6.ml | 39ms | 0.9ms | 7.3MB | 27ms | 0ms | ocaml 5.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 |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 1.8ms | 0.1ms | 5.0MB | 0ms | 0ms | ocaml 5.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 |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 180ms | 5.6ms | 6.5MB | 167ms | 0ms | ocaml 5.2.0 |
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 |
java | 1.java | 1080ms | 2.8ms | 968.3MB | 450ms | 743ms | openjdk/zgc 21 |
ocaml | 1.ml | 1126ms | 31ms | 71.0MB | 1087ms | 20ms | ocaml 5.2.0 |
ocaml | 2.ml | 2098ms | 41ms | 91.9MB | 2040ms | 40ms | ocaml 5.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 154ms | 0.1ms | 21.6MB | 140ms | 0ms | ocaml 5.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 |
ocaml | 2.ml | 368ms | 8.4ms | 27.6MB | 347ms | 7ms | ocaml 5.2.0 |
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 |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 372ms | 3.2ms | 5.3MB | 363ms | 0ms | ocaml 5.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 |
---|---|---|---|---|---|---|---|
ocaml | 1.ml | 40ms | 0.1ms | 5.3MB | 30ms | 0ms | ocaml 5.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 |
---|---|---|---|---|---|---|---|
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 |
ocaml | 1.ml | 975ms | 2.8ms | 552.4MB | 910ms | 50ms | ocaml 5.2.0 |
java | 2-m.java | 1369ms | 54ms | 201.6MB | 2457ms | 100ms | graal/jvm 17.0.8 |
ocaml | 2.ml | 1932ms | 30ms | 17.2MB | 1920ms | 0ms | ocaml 5.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 153ms | 3.0ms | 68.3MB | 190ms | 27ms | openjdk 23 |
java | 1.java | 160ms | 6.4ms | 64.9MB | 213ms | 23ms | openjdk 21 |
ocaml | 1.ml | 193ms | 2.0ms | 142.3MB | 170ms | 10ms | ocaml 5.2.0 |
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 |
ocaml | 2.ml | 478ms | 6.0ms | 9.1MB | 463ms | 0ms | ocaml 5.2.0 |
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 |
---|---|---|---|---|---|---|---|
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 |
ocaml | 2.ml | timeout | 0.0ms | 485.0MB | 4813ms | 173ms | ocaml 5.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
ocaml | 2.ml | 522ms | 8.4ms | 57.1MB | 487ms | 17ms | ocaml 5.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 |
ocaml | 2.ml | 4482ms | 6.4ms | 6.4MB | 4473ms | 0ms | ocaml 5.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 |
ocaml | 2.ml | 1129ms | 4.1ms | 6.1MB | 1117ms | 0ms | ocaml 5.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
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 |
ocaml | 2.ml | 285ms | 4.6ms | 5.2MB | 273ms | 0ms | ocaml 5.2.0 |
java | 2-m.java | 358ms | 5.7ms | 47.1MB | 680ms | 140ms | openjdk/zgc 21 |