Current benchmark data was generated on Sun Jun 01 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 |
---|---|---|---|---|---|---|---|
javascript | 1-m.js | 907ms | 13ms | 181.8MB | 1350ms | 187ms | bun 1.2.15 |
typescript | 1.ts | 1047ms | 18ms | 416.9MB | 1003ms | 190ms | deno 2.3.5 |
javascript | 1.js | 1049ms | 5.1ms | 469.9MB | 970ms | 217ms | node 24.1.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 100ms | 1.6ms | 77.6MB | 80ms | 27ms | bun 1.2.15 |
javascript | 1.js | 123ms | 1.2ms | 80.3MB | 127ms | 20ms | node 24.1.0 |
typescript | 1.ts | 129ms | 2.0ms | 79.4MB | 130ms | 27ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 1.ts | 1264ms | 4.4ms | 121.7MB | 1250ms | 60ms | deno 2.3.5 |
javascript | 1.js | 1597ms | 7.0ms | 189.2MB | 1570ms | 100ms | node 24.1.0 |
javascript | 1.js | 2458ms | 46ms | 104.4MB | 2503ms | 70ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 1.ts | 145ms | 2.8ms | 71.6MB | 127ms | 20ms | deno 2.3.5 |
javascript | 1.js | 158ms | 0.8ms | 74.8MB | 143ms | 27ms | node 24.1.0 |
javascript | 1.js | 199ms | 1.7ms | 87.9MB | 237ms | 37ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 1.ts | 2077ms | 9.2ms | 58.6MB | 1967ms | 117ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 1.ts | 244ms | 3.7ms | 58.0MB | 227ms | 23ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 12ms | 0.4ms | 31.5MB | 0ms | 0ms | bun 1.2.15 |
typescript | 1.ts | 26ms | 0.7ms | 44.7MB | 10ms | 4ms | deno 2.3.5 |
javascript | 1.js | 30ms | 0.6ms | 49.8MB | 18ms | 6ms | node 24.1.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1-m.bun.js | 251ms | 4.8ms | 79.9MB | 130ms | 317ms | bun 1.2.15 |
typescript | 2-m.ts | 636ms | 4.3ms | 237.5MB | 590ms | 410ms | deno 2.3.5 |
typescript | 1-m.ts | 656ms | 7.8ms | 242.8MB | 633ms | 397ms | deno 2.3.5 |
typescript | 1-http2.ts | 776ms | 4.9ms | 231.1MB | 757ms | 373ms | deno 2.3.5 |
typescript | 2-tls.ts | 1377ms | 3.6ms | 265.1MB | 1247ms | 493ms | deno 2.3.5 |
javascript | 1.js | 2719ms | 485ms | 296.0MB | 2637ms | 1240ms | node 24.1.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.bun.js | 87ms | 3.8ms | 55.5MB | 37ms | 67ms | bun 1.2.15 |
typescript | 2.ts | 162ms | 1.7ms | 92.7MB | 113ms | 93ms | deno 2.3.5 |
typescript | 1.ts | 165ms | 2.2ms | 92.3MB | 120ms | 90ms | deno 2.3.5 |
typescript | 1-http2.ts | 205ms | 1.4ms | 94.4MB | 157ms | 87ms | deno 2.3.5 |
typescript | 2-tls.ts | 337ms | 11ms | 99.4MB | 280ms | 103ms | deno 2.3.5 |
javascript | 1.js | 342ms | 4.1ms | 84.0MB | 330ms | 123ms | node 24.1.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 71ms | 1.1ms | 67.8MB | 40ms | 20ms | bun 1.2.15 |
javascript | 1.js | 102ms | 0.9ms | 74.9MB | 80ms | 20ms | node 24.1.0 |
typescript | 1.ts | 160ms | 5.7ms | 93.2MB | 160ms | 30ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 386ms | 2.1ms | 235.8MB | 333ms | 97ms | bun 1.2.15 |
javascript | 1.js | 575ms | 1.9ms | 203.2MB | 583ms | 123ms | node 24.1.0 |
typescript | 1.ts | 1186ms | 8.4ms | 414.0MB | 1300ms | 147ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 2.ts | 288ms | 12ms | 62.9MB | 273ms | 17ms | deno 2.3.5 |
javascript | 2.js | 304ms | 2.7ms | 64.1MB | 293ms | 13ms | node 24.1.0 |
javascript | 1.js | 566ms | 6.6ms | 62.7MB | 553ms | 7ms | node 24.1.0 |
typescript | 1.ts | 585ms | 3.6ms | 61.6MB | 567ms | 13ms | deno 2.3.5 |
javascript | 2.js | 634ms | 5.2ms | 123.1MB | 710ms | 43ms | bun 1.2.15 |
javascript | 1.js | 830ms | 15ms | 106.3MB | 903ms | 87ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 2.ts | 736ms | 4.6ms | 71.3MB | 723ms | 17ms | deno 2.3.5 |
javascript | 2.js | 833ms | 3.9ms | 71.4MB | 820ms | 17ms | node 24.1.0 |
javascript | 1.js | 1610ms | 3.9ms | 69.4MB | 1593ms | 10ms | node 24.1.0 |
typescript | 1.ts | 1682ms | 3.4ms | 69.1MB | 1660ms | 20ms | deno 2.3.5 |
javascript | 2.js | 1783ms | 10.0ms | 124.1MB | 1957ms | 77ms | bun 1.2.15 |
javascript | 1.js | 2362ms | 4.9ms | 106.4MB | 2650ms | 160ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 2.ts | 149ms | 3.4ms | 59.9MB | 140ms | 10ms | deno 2.3.5 |
javascript | 2.js | 164ms | 1.8ms | 58.7MB | 153ms | 10ms | node 24.1.0 |
javascript | 1.js | 167ms | 0.2ms | 59.9MB | 160ms | 3ms | node 24.1.0 |
typescript | 1.ts | 168ms | 0.4ms | 59.2MB | 150ms | 10ms | deno 2.3.5 |
javascript | 1.js | 318ms | 5.1ms | 130.3MB | 357ms | 77ms | bun 1.2.15 |
javascript | 2.js | 347ms | 3.8ms | 125.4MB | 380ms | 47ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1-m.js | 463ms | 1.1ms | 136.5MB | 613ms | 113ms | bun 1.2.15 |
typescript | 1.ts | 552ms | 0.2ms | 228.4MB | 557ms | 103ms | deno 2.3.5 |
javascript | 1.js | 558ms | 2.7ms | 230.3MB | 553ms | 113ms | node 24.1.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 1.js | 114ms | 2.2ms | 85.0MB | 100ms | 30ms | bun 1.2.15 |
typescript | 1.ts | 151ms | 1.5ms | 98.5MB | 147ms | 37ms | deno 2.3.5 |
javascript | 1.js | 156ms | 1.2ms | 100.3MB | 150ms | 33ms | node 24.1.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6.js | 456ms | 3.2ms | 57.9MB | 447ms | 7ms | node 24.1.0 |
typescript | 6.ts | 467ms | 12ms | 56.6MB | 453ms | 10ms | deno 2.3.5 |
javascript | 6.js | 597ms | 2.9ms | 45.0MB | 600ms | 0ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 6.ts | 76ms | 0.6ms | 56.5MB | 63ms | 7ms | deno 2.3.5 |
javascript | 6.js | 78ms | 2.2ms | 58.2MB | 67ms | 7ms | node 24.1.0 |
javascript | 6.js | 80ms | 0.6ms | 45.0MB | 90ms | 3ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 3.js | 4837ms | 44ms | 121.8MB | 4787ms | 47ms | node 24.1.0 |
typescript | 3.ts | 4877ms | 18ms | 133.1MB | 4760ms | 160ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 3.js | 1043ms | 5.1ms | 73.1MB | 1020ms | 17ms | node 24.1.0 |
typescript | 3.ts | 1118ms | 8.9ms | 78.1MB | 1063ms | 73ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 1.ts | 1938ms | 6.9ms | 59.6MB | 1943ms | 13ms | deno 2.3.5 |
javascript | 1.js | 2575ms | 7.6ms | 62.2MB | 2580ms | 13ms | node 24.1.0 |
javascript | 1.js | 2822ms | 6.0ms | 82.3MB | 2837ms | 43ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
typescript | 1.ts | 528ms | 3.9ms | 58.9MB | 530ms | 10ms | deno 2.3.5 |
javascript | 1.js | 686ms | 6.9ms | 58.8MB | 690ms | 10ms | node 24.1.0 |
javascript | 1.js | 736ms | 1.2ms | 82.1MB | 730ms | 33ms | bun 1.2.15 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6-m.js | 2185ms | 14ms | 119.3MB | 8240ms | 53ms | node 24.1.0 |
typescript | 7.ts | 4058ms | 21ms | 56.3MB | 4047ms | 7ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6-m.js | 653ms | 1.5ms | 117.6MB | 2320ms | 57ms | node 24.1.0 |
typescript | 7.ts | 1035ms | 5.1ms | 56.5MB | 1023ms | 10ms | deno 2.3.5 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
javascript | 6-m.js | 270ms | 2.9ms | 117.4MB | 843ms | 47ms | node 24.1.0 |
typescript | 7.ts | 285ms | 2.4ms | 54.4MB | 270ms | 10ms | deno 2.3.5 |