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 |
---|---|---|---|---|---|---|---|
rust | 5-i.rs | 29ms | 1.8ms | 9.8MB | 20ms | 0ms | rustc 1.87.0 |
rust | 4-i.rs | 31ms | 0.8ms | 7.9MB | 20ms | 0ms | rustc 1.87.0 |
go | 2-ffi.go | 45ms | 0.9ms | 41.2MB | 40ms | 0ms | go 1.24.3 |
d | 2.d | 58ms | 1.9ms | 15.6MB | 60ms | 10ms | ldc2 1.40.1 |
rust | 2.rs | 59ms | 2.6ms | 33.8MB | 37ms | 10ms | rustc 1.87.0 |
rust | 3.rs | 59ms | 2.5ms | 32.0MB | 37ms | 7ms | rustc 1.87.0 |
javascript | 1.js | 71ms | 1.1ms | 67.8MB | 40ms | 20ms | bun 1.2.15 |
rust | 1.rs | 99ms | 3.4ms | 67.4MB | 63ms | 23ms | rustc 1.87.0 |
javascript | 1.js | 102ms | 0.9ms | 74.9MB | 80ms | 20ms | node 24.1.0 |
go | 1.go | 142ms | 3.5ms | 18.6MB | 137ms | 0ms | go 1.24.3 |
typescript | 1.ts | 160ms | 5.7ms | 93.2MB | 160ms | 30ms | deno 2.3.5 |
dart | 1.dart | 163ms | 2.4ms | 53.0MB | 140ms | 17ms | dart/exe 3.8.1 |
python | 1.py | 201ms | 2.9ms | 38.2MB | 170ms | 20ms | pyston 3.8.12 |
python | 1.py | 217ms | 3.3ms | 38.6MB | 193ms | 10ms | cpython 3.13.3 |
d | 2.d | 239ms | 2.5ms | 22.5MB | 243ms | 10ms | dmd 2.111.0 |
ruby | 1.rb | 247ms | 0.5ms | 27.5MB | 220ms | 10ms | ruby 3.4.4 |
ruby | 1.rb | 249ms | 5.5ms | 27.8MB | 220ms | 13ms | ruby/yjit 3.4.4 |
python | 1.py | 303ms | 4.4ms | 88.7MB | 267ms | 27ms | pypy 3.10.16 |
csharp | 2.cs | 306ms | 0.8ms | 68.7MB | 270ms | 30ms | dotnet 9.0.300 |
csharp | 1.cs | 720ms | 5.2ms | 143.7MB | 743ms | 83ms | dotnet 9.0.300 |
kotlin | 1-m.kt | 732ms | 78ms | 157.5MB | 1977ms | 67ms | kotlin/jvm 21 |
ruby | 1-m.rb | 4414ms | 177ms | 502.4MB | 11650ms | 337ms | truffleruby 24.2.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
rust | 5-i.rs | 217ms | 2.8ms | 53.3MB | 190ms | 10ms | rustc 1.87.0 |
go | 2-ffi.go | 253ms | 11ms | 163.1MB | 243ms | 47ms | go 1.24.3 |
rust | 4-i.rs | 259ms | 4.8ms | 54.5MB | 207ms | 40ms | rustc 1.87.0 |
javascript | 1.js | 386ms | 2.1ms | 235.8MB | 333ms | 97ms | bun 1.2.15 |
rust | 2.rs | 389ms | 5.3ms | 238.3MB | 283ms | 93ms | rustc 1.87.0 |
rust | 3.rs | 406ms | 4.6ms | 237.8MB | 303ms | 90ms | rustc 1.87.0 |
d | 2.d | 455ms | 7.2ms | 139.9MB | 420ms | 40ms | ldc2 1.40.1 |
javascript | 1.js | 575ms | 1.9ms | 203.2MB | 583ms | 123ms | node 24.1.0 |
rust | 1.rs | 684ms | 5.4ms | 551.8MB | 440ms | 233ms | rustc 1.87.0 |
go | 1.go | 738ms | 4.5ms | 105.1MB | 727ms | 10ms | go 1.24.3 |
typescript | 1.ts | 1186ms | 8.4ms | 414.0MB | 1300ms | 147ms | deno 2.3.5 |
dart | 1.dart | 1453ms | 4.4ms | 205.8MB | 1683ms | 110ms | dart/exe 3.8.1 |
csharp | 2.cs | 1470ms | 26ms | 232.5MB | 1603ms | 87ms | dotnet 9.0.300 |
kotlin | 1-m.kt | 1846ms | 49ms | 711.3MB | 4333ms | 173ms | kotlin/jvm 21 |
python | 1.py | 1846ms | 14ms | 220.5MB | 1683ms | 150ms | pyston 3.8.12 |
python | 1.py | 1926ms | 22ms | 223.4MB | 1847ms | 67ms | pypy 3.10.16 |
python | 1.py | 1927ms | 18ms | 221.3MB | 1823ms | 87ms | cpython 3.13.3 |
ruby | 1.rb | 2068ms | 11ms | 135.0MB | 1977ms | 77ms | ruby/yjit 3.4.4 |
ruby | 1.rb | 2084ms | 23ms | 133.9MB | 2000ms | 73ms | ruby 3.4.4 |
d | 2.d | 2499ms | 7.6ms | 158.5MB | 2513ms | 37ms | dmd 2.111.0 |
csharp | 1.cs | 2689ms | 90ms | 753.0MB | 3190ms | 447ms | dotnet 9.0.300 |
ruby | 1.rb | timeout | 0.0ms | 515.9MB | 13230ms | 373ms | truffleruby 24.2.1 |