Current benchmark data was generated on Tue Dec 31 2024, 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 | 27ms | 1.7ms | 9.8MB | 17ms | 0ms | rustc 1.83.0 |
rust | 4-i.rs | 30ms | 1.6ms | 7.8MB | 20ms | 0ms | rustc 1.83.0 |
go | 2-ffi.go | 42ms | 0.5ms | 42.9MB | 40ms | 0ms | go 1.23.4 |
d | 2.d | 54ms | 0.8ms | 15.7MB | 47ms | 13ms | ldc2 1.40.0 |
rust | 3.rs | 59ms | 1.5ms | 33.6MB | 40ms | 7ms | rustc 1.83.0 |
rust | 2.rs | 59ms | 0.6ms | 35.5MB | 37ms | 10ms | rustc 1.83.0 |
javascript | 1.js | 80ms | 3.6ms | 65.6MB | 50ms | 13ms | bun 1.1.42 |
rust | 1.rs | 101ms | 3.7ms | 69.3MB | 63ms | 23ms | rustc 1.83.0 |
javascript | 1.js | 104ms | 1.8ms | 79.1MB | 97ms | 10ms | node 23.5.0 |
go | 1.go | 135ms | 3.3ms | 18.4MB | 123ms | 0ms | go 1.23.4 |
typescript | 1.ts | 154ms | 2.3ms | 96.9MB | 140ms | 37ms | deno 2.1.4 |
dart | 1.dart | 158ms | 3.1ms | 53.9MB | 130ms | 17ms | dart/exe 3.6.0 |
python | 1.py | 182ms | 0.5ms | 38.4MB | 143ms | 20ms | pyston 3.8.12 |
python | 1.py | 202ms | 5.2ms | 38.5MB | 170ms | 13ms | cpython 3.13.1 |
ruby | 1.rb | 233ms | 2.1ms | 30.2MB | 207ms | 13ms | ruby/yjit 3.4.1 |
d | 2.d | 236ms | 19ms | 22.9MB | 233ms | 40ms | dmd 2.109.1 |
ruby | 1.rb | 239ms | 6.8ms | 28.5MB | 203ms | 27ms | ruby 3.4.1 |
python | 1.py | 281ms | 7.9ms | 87.3MB | 240ms | 23ms | pypy 3.10.14 |
csharp | 2.cs | 298ms | 9.2ms | 80.7MB | 257ms | 23ms | dotnet 9.0.101 |
csharp | 1.cs | 801ms | 33ms | 153.1MB | 803ms | 90ms | dotnet 9.0.101 |
kotlin | 1-m.kt | 863ms | 53ms | 202.0MB | 2353ms | 83ms | kotlin/jvm 21 |
ruby | 1-m.rb | 4775ms | 26ms | 570.2MB | 12360ms | 407ms | truffleruby 24.1.1 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
rust | 5-i.rs | 197ms | 1.3ms | 53.3MB | 180ms | 3ms | rustc 1.83.0 |
go | 2-ffi.go | 237ms | 12ms | 150.0MB | 220ms | 43ms | go 1.23.4 |
rust | 4-i.rs | 253ms | 1.0ms | 53.6MB | 203ms | 37ms | rustc 1.83.0 |
javascript | 1.js | 367ms | 2.6ms | 207.0MB | 337ms | 73ms | bun 1.1.42 |
rust | 3.rs | 386ms | 6.4ms | 238.2MB | 290ms | 83ms | rustc 1.83.0 |
rust | 2.rs | 391ms | 1.5ms | 237.7MB | 287ms | 93ms | rustc 1.83.0 |
d | 2.d | 431ms | 7.9ms | 141.3MB | 410ms | 20ms | ldc2 1.40.0 |
rust | 1.rs | 656ms | 1.8ms | 551.0MB | 387ms | 257ms | rustc 1.83.0 |
javascript | 1.js | 657ms | 4.1ms | 204.7MB | 763ms | 73ms | node 23.5.0 |
go | 1.go | 742ms | 2.7ms | 104.7MB | 723ms | 20ms | go 1.23.4 |
typescript | 1.ts | 1150ms | 14ms | 430.0MB | 1270ms | 127ms | deno 2.1.4 |
dart | 1.dart | 1394ms | 26ms | 300.2MB | 1440ms | 107ms | dart/exe 3.6.0 |
csharp | 2.cs | 1437ms | 45ms | 224.3MB | 1627ms | 77ms | dotnet 9.0.101 |
python | 1.py | 1728ms | 15ms | 220.5MB | 1570ms | 140ms | pyston 3.8.12 |
python | 1.py | 1788ms | 9.0ms | 221.8MB | 1693ms | 80ms | pypy 3.10.14 |
python | 1.py | 1796ms | 4.2ms | 221.7MB | 1690ms | 87ms | cpython 3.13.1 |
ruby | 1.rb | 1968ms | 14ms | 133.1MB | 1873ms | 80ms | ruby 3.4.1 |
ruby | 1.rb | 1969ms | 6.9ms | 165.4MB | 1863ms | 90ms | ruby/yjit 3.4.1 |
kotlin | 1-m.kt | 2217ms | 99ms | 784.2MB | 4773ms | 140ms | kotlin/jvm 21 |
d | 2.d | 2375ms | 18ms | 157.8MB | 2370ms | 50ms | dmd 2.109.1 |
csharp | 1.cs | 2524ms | 51ms | 757.7MB | 2907ms | 400ms | dotnet 9.0.101 |
ruby | 1.rb | timeout | 0.0ms | 545.5MB | 13123ms | 380ms | truffleruby 24.1.1 |