Current benchmark data was generated on Mon Apr 14 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 | 28ms | 1.1ms | 9.8MB | 20ms | 0ms | rustc 1.86.0 |
rust | 4-i.rs | 31ms | 1.0ms | 7.9MB | 20ms | 0ms | rustc 1.86.0 |
go | 2-ffi.go | 46ms | 2.2ms | 41.1MB | 40ms | 3ms | go 1.24.2 |
d | 2.d | 57ms | 0.1ms | 15.8MB | 63ms | 7ms | ldc2 1.40.1 |
rust | 3.rs | 62ms | 0.9ms | 32.0MB | 40ms | 10ms | rustc 1.86.0 |
rust | 2.rs | 63ms | 1.1ms | 33.8MB | 40ms | 10ms | rustc 1.86.0 |
javascript | 1.js | 80ms | 6.4ms | 68.8MB | 53ms | 20ms | bun 1.2.9 |
rust | 1.rs | 100ms | 1.6ms | 67.4MB | 63ms | 23ms | rustc 1.86.0 |
javascript | 1.js | 125ms | 0.8ms | 75.8MB | 110ms | 20ms | node 23.11.0 |
go | 1.go | 142ms | 0.7ms | 18.7MB | 137ms | 0ms | go 1.24.2 |
dart | 1.dart | 165ms | 2.5ms | 53.4MB | 140ms | 20ms | dart/exe 3.7.2 |
typescript | 1.ts | 168ms | 0.7ms | 91.2MB | 163ms | 33ms | deno 2.2.9 |
python | 1.py | 201ms | 3.2ms | 38.2MB | 167ms | 17ms | pyston 3.8.12 |
python | 1.py | 222ms | 3.4ms | 38.8MB | 197ms | 10ms | cpython 3.13.3 |
d | 2.d | 238ms | 0.7ms | 22.5MB | 243ms | 7ms | dmd 2.111.0 |
ruby | 1.rb | 249ms | 0.3ms | 29.0MB | 220ms | 13ms | ruby/yjit 3.4.2 |
ruby | 1.rb | 254ms | 0.5ms | 27.4MB | 220ms | 20ms | ruby 3.4.2 |
python | 1.py | 299ms | 3.1ms | 89.5MB | 260ms | 27ms | pypy 3.10.16 |
csharp | 2.cs | 305ms | 1.6ms | 68.8MB | 273ms | 27ms | dotnet 9.0.203 |
csharp | 1.cs | 761ms | 68ms | 143.7MB | 783ms | 83ms | dotnet 9.0.203 |
kotlin | 1-m.kt | 773ms | 88ms | 172.2MB | 2063ms | 87ms | kotlin/jvm 21 |
ruby | 1-m.rb | 4445ms | 295ms | 567.1MB | 11670ms | 337ms | truffleruby 24.2.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
rust | 5-i.rs | 209ms | 2.5ms | 52.6MB | 183ms | 13ms | rustc 1.86.0 |
go | 2-ffi.go | 251ms | 15ms | 131.1MB | 230ms | 53ms | go 1.24.2 |
rust | 4-i.rs | 259ms | 0.4ms | 54.3MB | 203ms | 40ms | rustc 1.86.0 |
javascript | 1.js | 390ms | 3.3ms | 236.7MB | 333ms | 103ms | bun 1.2.9 |
rust | 2.rs | 409ms | 4.6ms | 237.6MB | 307ms | 90ms | rustc 1.86.0 |
rust | 3.rs | 412ms | 1.3ms | 237.6MB | 307ms | 90ms | rustc 1.86.0 |
d | 2.d | 465ms | 6.7ms | 141.8MB | 433ms | 37ms | ldc2 1.40.1 |
rust | 1.rs | 686ms | 5.4ms | 550.2MB | 447ms | 227ms | rustc 1.86.0 |
javascript | 1.js | 730ms | 6.0ms | 204.3MB | 810ms | 93ms | node 23.11.0 |
go | 1.go | 751ms | 2.0ms | 104.9MB | 737ms | 17ms | go 1.24.2 |
typescript | 1.ts | 1221ms | 24ms | 416.6MB | 1347ms | 153ms | deno 2.2.9 |
dart | 1.dart | 1499ms | 19ms | 205.3MB | 1737ms | 110ms | dart/exe 3.7.2 |
csharp | 2.cs | 1522ms | 33ms | 233.6MB | 1670ms | 93ms | dotnet 9.0.203 |
python | 1.py | 1828ms | 1.9ms | 220.5MB | 1663ms | 153ms | pyston 3.8.12 |
kotlin | 1-m.kt | 1862ms | 58ms | 671.6MB | 4417ms | 173ms | kotlin/jvm 21 |
python | 1.py | 1898ms | 10ms | 222.2MB | 1817ms | 63ms | pypy 3.10.16 |
python | 1.py | 1919ms | 14ms | 221.5MB | 1827ms | 80ms | cpython 3.13.3 |
ruby | 1.rb | 2093ms | 6.5ms | 135.0MB | 2003ms | 77ms | ruby/yjit 3.4.2 |
ruby | 1.rb | 2093ms | 7.0ms | 134.5MB | 2003ms | 73ms | ruby 3.4.2 |
d | 2.d | 2485ms | 13ms | 158.9MB | 2507ms | 27ms | dmd 2.111.0 |
csharp | 1.cs | 2653ms | 29ms | 735.8MB | 3230ms | 400ms | dotnet 9.0.203 |
ruby | 1.rb | timeout | 0.0ms | 522.9MB | 13260ms | 347ms | truffleruby 24.2.0 |