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 |
java | 2.java | 1170ms | 8.1ms | 1044.5MB | 570ms | 760ms | openjdk/zgc 21 |
swift | 1.swift | 2911ms | 5.8ms | 53.9MB | 2883ms | 17ms | swift 6.0.3 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2.java | 126ms | 6.8ms | 96.2MB | 147ms | 40ms | openjdk 23 |
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 |
swift | 1.swift | 239ms | 4.8ms | 12.0MB | 220ms | 0ms | swift 6.0.3 |
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 |
---|---|---|---|---|---|---|---|
java | 1-m.java | 911ms | 9.8ms | 100.3MB | 3347ms | 37ms | graal/jvm 17.0.8 |
java | 1-m.java | 978ms | 3.0ms | 48.5MB | 3633ms | 20ms | openjdk 21 |
java | 1-m.java | 987ms | 3.8ms | 50.3MB | 3620ms | 27ms | openjdk 23 |
java | 1-m.java | 1035ms | 18ms | 46.4MB | 3387ms | 133ms | openjdk/zgc 21 |
swift | 1.swift | 2463ms | 9.5ms | 5.6MB | 2450ms | 0ms | swift 6.0.3 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 181ms | 2.4ms | 48.3MB | 483ms | 20ms | openjdk 21 |
java | 1-m.java | 188ms | 5.8ms | 50.3MB | 470ms | 30ms | openjdk 23 |
swift | 1.swift | 212ms | 2.8ms | 5.6MB | 200ms | 0ms | swift 6.0.3 |
java | 1-m.java | 220ms | 19ms | 101.5MB | 580ms | 43ms | graal/jvm 17.0.8 |
java | 1-m.java | 296ms | 3.4ms | 47.5MB | 503ms | 130ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 3-m.swift | 140ms | 3.0ms | 24.8MB | 380ms | 3ms | swift 6.0.3 |
java | 4.java | 443ms | 2.7ms | 106.4MB | 627ms | 30ms | graal/jvm 17.0.8 |
java | 4.java | 452ms | 4.1ms | 47.5MB | 537ms | 20ms | openjdk 21 |
java | 4.java | 457ms | 2.3ms | 49.1MB | 537ms | 27ms | openjdk 23 |
java | 4.java | 563ms | 2.8ms | 45.2MB | 537ms | 130ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 3.swift | 37ms | 0.2ms | 18.1MB | 33ms | 0ms | swift 6.0.3 |
java | 4.java | 125ms | 1.5ms | 46.5MB | 167ms | 10ms | openjdk 21 |
java | 4-m.java | 125ms | 2.0ms | 47.9MB | 170ms | 20ms | openjdk 23 |
java | 4-m.java | 130ms | 6.6ms | 92.6MB | 180ms | 33ms | graal/jvm 17.0.8 |
java | 4.java | 239ms | 4.5ms | 46.0MB | 160ms | 133ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 1.swift | 2.3ms | 0.2ms | 6.0MB | 0ms | 0ms | swift 6.0.3 |
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 |
---|---|---|---|---|---|---|---|
java | 3-m.java | 1038ms | 48ms | 155.0MB | 3503ms | 50ms | openjdk 23 |
java | 3-m.java | 1040ms | 74ms | 127.6MB | 3567ms | 33ms | openjdk 21 |
java | 3-m.java | 1106ms | 10ms | 182.0MB | 3770ms | 73ms | graal/jvm 17.0.8 |
swift | 2-m.swift | 1401ms | 19ms | 72.6MB | 5030ms | 33ms | swift 6.0.3 |
java | 3-m.java | 1447ms | 54ms | 180.5MB | 4570ms | 197ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 2-m.swift | 262ms | 2.8ms | 63.8MB | 687ms | 20ms | swift 6.0.3 |
java | 3-m.java | 316ms | 23ms | 102.0MB | 920ms | 40ms | openjdk 21 |
java | 3-m.java | 335ms | 7.7ms | 137.4MB | 883ms | 73ms | graal/jvm 17.0.8 |
java | 3-m.java | 338ms | 27ms | 87.0MB | 1007ms | 33ms | openjdk 23 |
java | 3-m.java | 419ms | 1.9ms | 99.3MB | 853ms | 173ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 7.swift | 344ms | 2.5ms | 9.8MB | 330ms | 0ms | swift 6.0.3 |
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 |
java | 1.java | 565ms | 2.0ms | 44.6MB | 497ms | 127ms | openjdk/zgc 21 |
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 |
---|---|---|---|---|---|---|---|
swift | 7.swift | 39ms | 1.1ms | 9.8MB | 30ms | 0ms | swift 6.0.3 |
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 |
---|---|---|---|---|---|---|---|
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 |
java | 1.java | timeout | 0.0ms | 1870.9MB | 4497ms | 1297ms | openjdk/zgc 21 |
swift | 1.swift | timeout | 0.0ms | 7.1MB | 4907ms | 77ms | swift 6.0.3 |
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 |
swift | 1.swift | 1861ms | 13ms | 6.9MB | 1840ms | 3ms | swift 6.0.3 |
java | 1.java | 2009ms | 52ms | 1383.0MB | 1723ms | 1053ms | openjdk/zgc 21 |