Current benchmark data was generated on Tue Apr 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 | 3-m.rs | 515ms | 33ms | 9.1MB | 1920ms | 73ms | rustc 1.85.1 |
go | 1-m.go | 560ms | 31ms | 15.5MB | 2190ms | 0ms | go 1.24.1 |
rust | 5-m.rs | 705ms | 15ms | 5.5MB | 2663ms | 83ms | rustc 1.85.1 |
go | 1.go | 752ms | 8.4ms | 268.3MB | 693ms | 43ms | tinygo 0.37.0 |
rust | 1-m.rs | 972ms | 6.4ms | 8.5MB | 3587ms | 207ms | rustc 1.85.1 |
wasm | 3.rs | 1133ms | 6.8ms | 19.4MB | 1117ms | 0ms | wasmtime 31.0.0 |
rust | 3.rs | 1150ms | 20ms | 9.3MB | 1100ms | 37ms | rustc 1.85.1 |
typescript | 1.ts | 1168ms | 1.9ms | 120.6MB | 1160ms | 60ms | deno 2.2.6 |
python | 1.py | 1208ms | 9.0ms | 106.4MB | 1153ms | 37ms | pypy 3.10.16 |
crystal | 1.cr | 1270ms | 70ms | 19.6MB | 1200ms | 53ms | crystal 1.15.1 |
ruby | 1.rb | 1459ms | 16ms | 63.8MB | 1383ms | 60ms | ruby/yjit 3.4.2 |
javascript | 1.js | 1611ms | 17ms | 90.1MB | 1693ms | 57ms | node 23.10.0 |
kotlin | 2-m.kt | 1675ms | 62ms | 239.8MB | 6200ms | 103ms | kotlin/jvm 21 |
ruby | 1.rb | 1869ms | 36ms | 63.1MB | 1790ms | 63ms | ruby 3.4.2 |
rust | 4.rs | 1914ms | 27ms | 7.4MB | 1900ms | 0ms | rustc 1.85.1 |
kotlin | 1.kt | 2139ms | 21ms | 220.6MB | 2957ms | 70ms | kotlin/jvm 21 |
csharp | 1-m.cs | 2276ms | 132ms | 52.0MB | 7957ms | 63ms | dotnet/aot 9.0.202 |
chapel | 1-m.chpl | 2339ms | 24ms | 506.1MB | 4557ms | 70ms | chpl 1.31.0 |
java | 1-m.java | 2369ms | 239ms | 257.6MB | 8973ms | 137ms | openjdk 21 |
java | 1-m.java | 2440ms | 133ms | 242.6MB | 9250ms | 147ms | openjdk 23 |
javascript | 1.js | 2512ms | 15ms | 101.3MB | 2547ms | 53ms | bun 1.2.8 |
python | 1.py | 2704ms | 11ms | 25.0MB | 2677ms | 10ms | cpython 3.13.2 |
csharp | 1-m.cs | 2746ms | 47ms | 67.1MB | 8730ms | 100ms | dotnet 9.0.202 |
java | 1-m.java | 3165ms | 194ms | 1248.2MB | 10320ms | 1190ms | openjdk/zgc 21 |
dart | 1.dart | 4958ms | 24ms | 19.3MB | 5457ms | 93ms | dart/exe 3.7.2 |
d | 1.d | timeout | 0.0ms | 17.9MB | 4967ms | 23ms | dmd 2.110.0 |
d | 1.d | timeout | 0.0ms | 16.6MB | 4967ms | 23ms | ldc2 1.40.1 |
kotlin | 1.kt | timeout | 0.0ms | 12.9MB | 6027ms | 473ms | kotlin/native 1.8.21 |
kotlin | 2-m.kt | timeout | 0.0ms | 74.9MB | 19033ms | 150ms | kotlin/native 1.8.21 |
nim | 1.nim | timeout | 0.0ms | 559.8MB | 2490ms | 2047ms | nim/clang 2.2.2 |
nim | 1.nim | timeout | 0.0ms | 551.4MB | 2497ms | 2040ms | nim 2.2.2 |
python | 1.py | timeout | 0.0ms | 17.4MB | 4980ms | 7ms | pyston 3.8.12 |
ruby | 1.rb | timeout | 0.0ms | 344.5MB | 4627ms | 1523ms | truffleruby 24.2.0 |
v | 1.v | timeout | 0.0ms | 18.9MB | 8710ms | 10460ms | v/clang+gc 0.4.10 |
v | 1.v | timeout | 0.0ms | 18.1MB | 8790ms | 10533ms | v/clang 0.4.10 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
go | 1-m.go | 46ms | 14ms | 7.4MB | 157ms | 0ms | go 1.24.1 |
rust | 5-m.rs | 52ms | 1.0ms | 3.4MB | 157ms | 10ms | rustc 1.85.1 |
rust | 3-m.rs | 57ms | 3.9ms | 4.4MB | 173ms | 13ms | rustc 1.85.1 |
go | 1.go | 70ms | 0.3ms | 68.6MB | 50ms | 10ms | tinygo 0.37.0 |
crystal | 1.cr | 72ms | 1.4ms | 7.0MB | 50ms | 10ms | crystal 1.15.1 |
rust | 3.rs | 73ms | 1.3ms | 4.0MB | 63ms | 0ms | rustc 1.85.1 |
rust | 1-m.rs | 75ms | 0.5ms | 3.8MB | 243ms | 17ms | rustc 1.85.1 |
wasm | 3.rs | 82ms | 1.6ms | 17.7MB | 70ms | 0ms | wasmtime 31.0.0 |
rust | 4.rs | 116ms | 2.5ms | 3.3MB | 107ms | 0ms | rustc 1.85.1 |
typescript | 1.ts | 147ms | 2.8ms | 70.7MB | 127ms | 23ms | deno 2.2.6 |
ruby | 1.rb | 158ms | 1.9ms | 25.6MB | 127ms | 20ms | ruby/yjit 3.4.2 |
csharp | 1-m.cs | 161ms | 21ms | 19.1MB | 460ms | 10ms | dotnet/aot 9.0.202 |
javascript | 1.js | 172ms | 23ms | 72.3MB | 160ms | 20ms | node 23.10.0 |
chapel | 1-m.chpl | 187ms | 5.2ms | 470.8MB | 303ms | 40ms | chpl 1.31.0 |
ruby | 1.rb | 188ms | 3.4ms | 25.1MB | 157ms | 20ms | ruby 3.4.2 |
javascript | 1.js | 201ms | 1.8ms | 87.0MB | 223ms | 30ms | bun 1.2.8 |
python | 1.py | 220ms | 3.2ms | 86.7MB | 180ms | 23ms | pypy 3.10.16 |
python | 1.py | 239ms | 7.5ms | 20.4MB | 220ms | 3ms | cpython 3.13.2 |
csharp | 1-m.cs | 311ms | 6.5ms | 37.2MB | 817ms | 20ms | dotnet 9.0.202 |
dart | 1.dart | 338ms | 5.0ms | 10.4MB | 347ms | 10ms | dart/exe 3.7.2 |
kotlin | 2-m.kt | 435ms | 3.2ms | 13.1MB | 1603ms | 20ms | kotlin/native 1.8.21 |
java | 1-m.java | 474ms | 13ms | 92.7MB | 1553ms | 60ms | openjdk 23 |
kotlin | 1-m.kt | 479ms | 11ms | 76.6MB | 1113ms | 43ms | kotlin/jvm 21 |
java | 1-m.java | 482ms | 35ms | 122.2MB | 1600ms | 70ms | openjdk 21 |
python | 1.py | 657ms | 16ms | 16.8MB | 637ms | 3ms | pyston 3.8.12 |
java | 1-m.java | 665ms | 22ms | 214.5MB | 1780ms | 247ms | openjdk/zgc 21 |
kotlin | 1.kt | 679ms | 11ms | 8.7MB | 807ms | 63ms | kotlin/native 1.8.21 |
kotlin | 2-m.kt | 828ms | 69ms | 98.6MB | 2877ms | 77ms | kotlin/jvm 21 |
d | 1.d | 1038ms | 4.5ms | 12.2MB | 1017ms | 10ms | ldc2 1.40.1 |
d | 1.d | 1327ms | 17ms | 14.5MB | 1303ms | 17ms | dmd 2.110.0 |
v | 1-m.v | 1373ms | 37ms | 9.8MB | 2297ms | 2957ms | v/clang 0.4.10 |
v | 1-m.v | 1402ms | 57ms | 10.3MB | 2330ms | 2993ms | v/clang+gc 0.4.10 |
nim | 1.nim | 4356ms | 55ms | 519.8MB | 2120ms | 1803ms | nim/clang 2.2.2 |
nim | 1.nim | 4452ms | 76ms | 519.4MB | 2183ms | 1837ms | nim 2.2.2 |
ruby | 1.rb | timeout | 0.0ms | 346.9MB | 4623ms | 1517ms | truffleruby 24.2.0 |