Current benchmark data was generated on Thu Jul 31 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 | 10ms | 574.1MB | 560ms | 93ms | openjdk 21 |
java | 2.java | 482ms | 8.0ms | 614.5MB | 597ms | 97ms | openjdk 23 |
java | 2-m.java | 490ms | 24ms | 642.8MB | 657ms | 147ms | graal/jvm 17.0.8 |
java | 2.java | 1164ms | 12ms | 1038.5MB | 583ms | 750ms | openjdk/zgc 21 |
swift | 1.swift | 2696ms | 65ms | 53.8MB | 2660ms | 20ms | swift 6.1.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2.java | 124ms | 9.7ms | 97.1MB | 157ms | 27ms | openjdk 23 |
java | 2.java | 127ms | 1.8ms | 169.1MB | 157ms | 30ms | openjdk 21 |
java | 2-m.java | 158ms | 2.6ms | 224.2MB | 233ms | 60ms | graal/jvm 17.0.8 |
swift | 1.swift | 242ms | 1.6ms | 11.8MB | 230ms | 0ms | swift 6.1.2 |
java | 2.java | 310ms | 4.2ms | 241.5MB | 163ms | 203ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 581ms | 12ms | 279.9MB | 1600ms | 70ms | openjdk 21 |
java | 1-m.java | 609ms | 6.2ms | 352.4MB | 1180ms | 103ms | graal/jvm 17.0.8 |
java | 1-m.java | 612ms | 54ms | 236.7MB | 1663ms | 73ms | openjdk 23 |
java | 1-m.java | 959ms | 37ms | 526.9MB | 1643ms | 403ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 320ms | 35ms | 226.8MB | 627ms | 70ms | graal/jvm 17.0.8 |
java | 1-m.java | 352ms | 43ms | 195.6MB | 950ms | 57ms | openjdk 21 |
java | 1-m.java | 367ms | 18ms | 125.4MB | 1000ms | 57ms | openjdk 23 |
java | 1-m.java | 529ms | 29ms | 213.2MB | 1033ms | 217ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 898ms | 14ms | 95.6MB | 3310ms | 40ms | graal/jvm 17.0.8 |
java | 1-m.java | 953ms | 32ms | 48.4MB | 3513ms | 27ms | openjdk 21 |
java | 1-m.java | 984ms | 12ms | 50.2MB | 3630ms | 23ms | openjdk 23 |
java | 1-m.java | 1030ms | 8.5ms | 45.8MB | 3393ms | 137ms | openjdk/zgc 21 |
swift | 1.swift | 2460ms | 8.8ms | 5.4MB | 2450ms | 0ms | swift 6.1.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 181ms | 3.0ms | 48.3MB | 500ms | 23ms | openjdk 21 |
java | 1-m.java | 194ms | 5.4ms | 50.1MB | 510ms | 20ms | openjdk 23 |
swift | 1.swift | 212ms | 1.2ms | 5.5MB | 200ms | 0ms | swift 6.1.2 |
java | 1-m.java | 212ms | 5.5ms | 95.8MB | 593ms | 43ms | graal/jvm 17.0.8 |
java | 1-m.java | 301ms | 3.6ms | 46.0MB | 497ms | 143ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 3-m.swift | 142ms | 1.0ms | 20.7MB | 400ms | 3ms | swift 6.1.2 |
java | 4-m.java | 449ms | 8.5ms | 101.6MB | 633ms | 43ms | graal/jvm 17.0.8 |
java | 4.java | 454ms | 6.2ms | 49.0MB | 543ms | 20ms | openjdk 23 |
java | 4.java | 455ms | 7.4ms | 47.7MB | 553ms | 17ms | openjdk 21 |
java | 4.java | 577ms | 4.1ms | 45.3MB | 553ms | 137ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 3.swift | 37ms | 0.3ms | 14.4MB | 37ms | 0ms | swift 6.1.2 |
java | 4-m.java | 123ms | 4.9ms | 46.6MB | 170ms | 17ms | openjdk 21 |
java | 4.java | 124ms | 3.8ms | 48.0MB | 170ms | 13ms | openjdk 23 |
java | 4-m.java | 129ms | 11ms | 91.8MB | 180ms | 33ms | graal/jvm 17.0.8 |
java | 4.java | 243ms | 7.9ms | 43.8MB | 157ms | 140ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 1.swift | 2.5ms | 0.2ms | 6.0MB | 0ms | 0ms | swift 6.1.2 |
java | 1.java | 64ms | 2.2ms | 52.9MB | 70ms | 20ms | graal/jvm 17.0.8 |
java | 1.java | 70ms | 6.0ms | 44.7MB | 76ms | 16ms | openjdk 23 |
java | 1.java | 73ms | 2.0ms | 43.8MB | 74ms | 20ms | openjdk 21 |
java | 1.java | 188ms | 4.1ms | 43.2MB | 82ms | 136ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 3-m.java | 1085ms | 42ms | 129.7MB | 3697ms | 47ms | openjdk 21 |
java | 3-m.java | 1095ms | 8.7ms | 156.1MB | 3740ms | 57ms | openjdk 23 |
java | 3-m.java | 1123ms | 24ms | 180.1MB | 3847ms | 63ms | graal/jvm 17.0.8 |
swift | 2-m.swift | 1329ms | 10ms | 74.6MB | 4820ms | 40ms | swift 6.1.2 |
java | 3-m.java | 1433ms | 31ms | 179.2MB | 4513ms | 217ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 2-m.swift | 256ms | 2.8ms | 67.8MB | 673ms | 40ms | swift 6.1.2 |
java | 3-m.java | 321ms | 27ms | 95.4MB | 930ms | 33ms | openjdk 21 |
java | 3-m.java | 328ms | 7.5ms | 86.0MB | 953ms | 40ms | openjdk 23 |
java | 3-m.java | 330ms | 1.4ms | 135.9MB | 900ms | 57ms | graal/jvm 17.0.8 |
java | 3-m.java | 442ms | 5.8ms | 100.1MB | 933ms | 167ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1b.java | 1158ms | 11ms | 54.3MB | 1267ms | 20ms | openjdk 21 |
java | 1b.java | 1158ms | 12ms | 55.6MB | 1263ms | 17ms | openjdk 23 |
java | 1b.java | 1187ms | 12ms | 109.9MB | 1383ms | 47ms | graal/jvm 17.0.8 |
java | 1.java | 1252ms | 4.7ms | 138.0MB | 1357ms | 50ms | graal/jvm 17.0.8 |
java | 1b.java | 1284ms | 7.5ms | 51.2MB | 1270ms | 143ms | openjdk/zgc 21 |
java | 1a.java | 1660ms | 3.1ms | 56.5MB | 1763ms | 17ms | openjdk 23 |
java | 1a.java | 1666ms | 14ms | 55.2MB | 1767ms | 23ms | openjdk 21 |
java | 1a.java | 1680ms | 4.1ms | 102.4MB | 1793ms | 40ms | graal/jvm 17.0.8 |
java | 1.java | 1707ms | 3.8ms | 202.5MB | 1787ms | 33ms | openjdk 21 |
java | 1.java | 1718ms | 7.0ms | 315.7MB | 1770ms | 60ms | openjdk 23 |
java | 1a.java | 1781ms | 5.0ms | 51.4MB | 1757ms | 140ms | openjdk/zgc 21 |
java | 1.java | 2361ms | 7.8ms | 857.1MB | 1803ms | 663ms | openjdk/zgc 21 |
java | 2.java | timeout | 0.0ms | 670.6MB | 5280ms | 117ms | openjdk 21 |
java | 2.java | timeout | 0.0ms | 886.9MB | 5317ms | 140ms | openjdk 23 |
java | 2.java | timeout | 0.0ms | 3370.5MB | 3433ms | 1933ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1b-m.java | 178ms | 10ms | 49.5MB | 287ms | 20ms | openjdk 21 |
java | 1b-m.java | 186ms | 4.6ms | 51.5MB | 300ms | 20ms | openjdk 23 |
java | 1a-m.java | 189ms | 3.1ms | 51.9MB | 290ms | 23ms | openjdk 23 |
java | 1-m.java | 194ms | 2.8ms | 82.1MB | 267ms | 27ms | openjdk 21 |
java | 1-m.java | 196ms | 6.4ms | 87.3MB | 270ms | 33ms | openjdk 23 |
java | 1-m.java | 198ms | 6.6ms | 112.3MB | 300ms | 50ms | graal/jvm 17.0.8 |
java | 1a-m.java | 200ms | 5.3ms | 50.7MB | 310ms | 23ms | openjdk 21 |
java | 1a-m.java | 211ms | 3.3ms | 98.6MB | 320ms | 37ms | graal/jvm 17.0.8 |
java | 1b-m.java | 246ms | 16ms | 102.2MB | 423ms | 47ms | graal/jvm 17.0.8 |
java | 1b.java | 305ms | 3.3ms | 47.6MB | 300ms | 140ms | openjdk/zgc 21 |
java | 1a.java | 314ms | 0.7ms | 48.1MB | 297ms | 143ms | openjdk/zgc 21 |
java | 1.java | 333ms | 11ms | 114.3MB | 267ms | 160ms | openjdk/zgc 21 |
java | 2-m.java | 566ms | 9.2ms | 659.0MB | 843ms | 93ms | openjdk 21 |
java | 2-m.java | 574ms | 7.2ms | 833.9MB | 840ms | 113ms | openjdk 23 |
java | 2.java | 1595ms | 3.0ms | 1358.2MB | 857ms | 1047ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 403ms | 3.7ms | 538.3MB | 493ms | 97ms | openjdk 23 |
java | 1.java | 419ms | 5.8ms | 678.2MB | 483ms | 103ms | openjdk 21 |
java | 1-m.java | 427ms | 23ms | 637.7MB | 607ms | 137ms | graal/jvm 17.0.8 |
java | 1.java | 1043ms | 30ms | 962.6MB | 467ms | 717ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 164ms | 3.0ms | 159.4MB | 237ms | 43ms | openjdk 23 |
java | 1-m.java | 169ms | 2.5ms | 206.0MB | 230ms | 50ms | openjdk 21 |
java | 1-m.java | 212ms | 11ms | 254.4MB | 347ms | 70ms | graal/jvm 17.0.8 |
java | 1.java | 413ms | 7.7ms | 341.8MB | 217ms | 277ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 7.swift | 343ms | 0.7ms | 9.9MB | 330ms | 0ms | swift 6.1.2 |
java | 1.java | 444ms | 0.6ms | 45.2MB | 483ms | 17ms | openjdk 21 |
java | 1.java | 447ms | 0.7ms | 47.7MB | 477ms | 13ms | openjdk 23 |
java | 1.java | 447ms | 5.0ms | 81.4MB | 477ms | 30ms | graal/jvm 17.0.8 |
java | 1.java | 572ms | 3.7ms | 44.7MB | 493ms | 140ms | openjdk/zgc 21 |
java | 2.java | 1244ms | 20ms | 606.7MB | 1363ms | 87ms | openjdk 21 |
java | 2.java | 1262ms | 3.5ms | 766.4MB | 1373ms | 110ms | openjdk 23 |
java | 2.java | 3247ms | 12ms | 2328.0MB | 1667ms | 1787ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
swift | 7.swift | 40ms | 0.8ms | 10.3MB | 30ms | 0ms | swift 6.1.2 |
java | 1.java | 118ms | 3.1ms | 45.7MB | 150ms | 20ms | openjdk 21 |
java | 1-m.java | 123ms | 1.2ms | 81.5MB | 153ms | 33ms | graal/jvm 17.0.8 |
java | 1.java | 125ms | 2.6ms | 48.1MB | 163ms | 20ms | openjdk 23 |
java | 1.java | 242ms | 5.6ms | 44.8MB | 153ms | 143ms | openjdk/zgc 21 |
java | 2-m.java | 299ms | 6.1ms | 371.3MB | 443ms | 53ms | openjdk 21 |
java | 2-m.java | 304ms | 5.0ms | 400.0MB | 430ms | 73ms | openjdk 23 |
java | 2.java | 681ms | 16ms | 531.1MB | 473ms | 403ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 406ms | 0.6ms | 118.3MB | 450ms | 20ms | openjdk 23 |
java | 1.java | 410ms | 4.4ms | 115.7MB | 467ms | 23ms | openjdk 21 |
java | 1.java | 580ms | 15ms | 112.5MB | 487ms | 167ms | openjdk/zgc 21 |
java | 1-m.java | 642ms | 15ms | 230.6MB | 930ms | 73ms | graal/jvm 17.0.8 |
java | 2.java | 789ms | 3.2ms | 60.2MB | 837ms | 17ms | openjdk 23 |
java | 2.java | 789ms | 14ms | 57.3MB | 843ms | 17ms | openjdk 21 |
java | 2.java | 853ms | 0.7ms | 53.1MB | 783ms | 147ms | openjdk/zgc 21 |
java | 2-m.java | 1382ms | 44ms | 281.8MB | 2483ms | 103ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 152ms | 6.3ms | 68.3MB | 200ms | 20ms | openjdk 23 |
java | 1.java | 158ms | 1.2ms | 64.7MB | 203ms | 20ms | openjdk 21 |
java | 1-m.java | 209ms | 9.5ms | 137.2MB | 290ms | 47ms | graal/jvm 17.0.8 |
java | 2.java | 261ms | 0.2ms | 50.5MB | 310ms | 23ms | openjdk 23 |
java | 2.java | 262ms | 2.4ms | 50.0MB | 327ms | 20ms | openjdk 21 |
java | 1.java | 292ms | 0.5ms | 61.4MB | 207ms | 153ms | openjdk/zgc 21 |
java | 2.java | 376ms | 1.5ms | 47.4MB | 303ms | 143ms | openjdk/zgc 21 |
java | 2-m.java | 522ms | 73ms | 149.7MB | 937ms | 60ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1.java | 3255ms | 3.2ms | 443.5MB | 3677ms | 110ms | graal/jvm 17.0.8 |
java | 1.java | 3749ms | 36ms | 431.4MB | 4663ms | 113ms | openjdk 21 |
java | 1.java | 3811ms | 14ms | 432.3MB | 4623ms | 120ms | openjdk 23 |
java | 1.java | timeout | 0.0ms | 1904.3MB | 4737ms | 1153ms | openjdk/zgc 21 |
swift | 1.swift | timeout | 0.0ms | 7.1MB | 4930ms | 60ms | swift 6.1.2 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 1-m.java | 901ms | 3.0ms | 441.7MB | 1270ms | 93ms | graal/jvm 17.0.8 |
java | 1-m.java | 1002ms | 34ms | 421.9MB | 1797ms | 97ms | openjdk 21 |
java | 1-m.java | 1005ms | 13ms | 435.3MB | 1803ms | 107ms | openjdk 23 |
swift | 1.swift | 1868ms | 5.6ms | 7.0MB | 1853ms | 0ms | swift 6.1.2 |
java | 1.java | 2055ms | 14ms | 1339.4MB | 1730ms | 1090ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 3.java | timeout | 0.0ms | 395.5MB | 5400ms | 83ms | graal/jvm 17.0.8 |
java | 3.java | timeout | 0.0ms | 302.3MB | 5337ms | 60ms | openjdk 21 |
java | 3.java | timeout | 0.0ms | 304.9MB | 5327ms | 60ms | openjdk 23 |
java | 3.java | timeout | 0.0ms | 468.6MB | 4963ms | 300ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 3-m.java | 780ms | 15ms | 176.2MB | 1167ms | 50ms | graal/jvm 17.0.8 |
java | 3-m.java | 809ms | 7.9ms | 132.5MB | 1247ms | 37ms | openjdk 23 |
java | 3-m.java | 827ms | 31ms | 129.7MB | 1240ms | 33ms | openjdk 21 |
java | 3.java | 964ms | 7.0ms | 134.3MB | 1160ms | 190ms | openjdk/zgc 21 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 1989ms | 6.0ms | 47.5MB | 7610ms | 27ms | openjdk 21 |
java | 2-m.java | 2003ms | 3.3ms | 48.8MB | 7670ms | 30ms | openjdk 23 |
java | 2-m.java | 2130ms | 11ms | 45.6MB | 7617ms | 150ms | openjdk/zgc 21 |
java | 2-m.java | 2519ms | 12ms | 94.9MB | 9443ms | 43ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 605ms | 4.4ms | 47.7MB | 2143ms | 20ms | openjdk 21 |
java | 2-m.java | 610ms | 12ms | 48.8MB | 2173ms | 20ms | openjdk 23 |
java | 2-m.java | 723ms | 12ms | 45.4MB | 2133ms | 147ms | openjdk/zgc 21 |
java | 2-m.java | 772ms | 6.4ms | 95.1MB | 2720ms | 43ms | graal/jvm 17.0.8 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
java | 2-m.java | 252ms | 0.8ms | 47.2MB | 763ms | 20ms | openjdk 21 |
java | 2-m.java | 259ms | 4.4ms | 48.9MB | 783ms | 23ms | openjdk 23 |
java | 2-m.java | 308ms | 10ms | 95.0MB | 930ms | 33ms | graal/jvm 17.0.8 |
java | 2-m.java | 379ms | 7.6ms | 45.1MB | 753ms | 147ms | openjdk/zgc 21 |