Current benchmark data was generated on Thu Jul 13 2023, 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 |
---|---|---|---|---|---|---|---|
go | 1-m.go | 930ms | 108ms | 13.5MB | 1800ms | 7ms | go 1.20.6 |
python | 1.py | 1011ms | 11ms | 189.0MB | 917ms | 77ms | pypy 3.10.12 |
wasm | 3.rs | 1425ms | 14ms | 56.6MB | 1440ms | 10ms | node 18.16.1 |
wasm | 3.rs | 1520ms | 4.5ms | 18.5MB | 1503ms | 3ms | wasmtime 10.0.1 |
rust | 5-m.rs | 1526ms | 487ms | 5.5MB | 2950ms | 47ms | rustc 1.70.0 |
crystal | 1.cr | 1819ms | 61ms | 20.4MB | 1783ms | 17ms | crystal 1.9.0 |
rust | 3.rs | 1892ms | 8.6ms | 7.4MB | 1837ms | 37ms | rustc 1.70.0 |
wasm | 3.rs | 2028ms | 2.8ms | 28.4MB | 2010ms | 0ms | wasmedgec 0.13.1 |
typescript | 1.ts | 2091ms | 66ms | 78.7MB | 2083ms | 30ms | deno 1.35.1 |
javascript | 1.js | 2222ms | 17ms | 79.9MB | 2267ms | 43ms | node 20.4.0 |
rust | 3-m.rs | 2420ms | 212ms | 7.2MB | 4707ms | 53ms | rustc 1.70.0 |
kotlin | 1.kt | 2859ms | 35ms | 159.4MB | 3670ms | 50ms | kotlin/jvm 17.0.2 |
rust | 1-m.rs | 2933ms | 25ms | 4.6MB | 5687ms | 90ms | rustc 1.70.0 |
go | 1.go | 3070ms | 9.5ms | 253.2MB | 2970ms | 77ms | tinygo 0.28.1 |
kotlin | 2-m.kt | 3154ms | 425ms | 183.1MB | 5987ms | 73ms | kotlin/jvm 17.0.2 |
javascript | 1.js | 3195ms | 143ms | 121.5MB | 3190ms | 27ms | bun 0.6.14 |
ruby | 1.rb | 3206ms | 100ms | 82.7MB | 3143ms | 47ms | ruby/yjit 3.2.2 |
rust | 4.rs | 3210ms | 10ms | 4.3MB | 3197ms | 0ms | rustc 1.70.0 |
ruby | 1.rb | 3619ms | 125ms | 82.2MB | 3550ms | 53ms | ruby 3.2.2 |
chapel | 1-m.chpl | 4044ms | 31ms | 83.4MB | 7847ms | 37ms | chpl 1.31.0 |
csharp | 1-m.cs | 4416ms | 189ms | 106.6MB | 7553ms | 80ms | dotnet 7.0.306 |
csharp | 1.cs | timeout | 0.0ms | 82.8MB | 9367ms | 53ms | dotnet/aot 7.0.306 |
d | 1.d | timeout | 0.0ms | 14.9MB | 4977ms | 3ms | dmd 2.104.1 |
d | 1.d | timeout | 0.0ms | 14.6MB | 4963ms | 13ms | ldc2 1.32.2 |
dart | 1.dart | timeout | 0.0ms | 26.3MB | 4923ms | 53ms | dart/exe 3.0.6 |
java | 1.java | timeout | 0.0ms | 142.9MB | 9613ms | 87ms | openjdk 20 |
java | 1.java | timeout | 0.0ms | 146.5MB | 9657ms | 77ms | openjdk 22 |
java | 1.java | timeout | 0.0ms | 931.7MB | 9253ms | 423ms | openjdk/zgc 20 |
kotlin | 1.kt | timeout | 0.0ms | 10.8MB | 6413ms | 250ms | kotlin/native 1.8.21 |
kotlin | 2-m.kt | timeout | 0.0ms | 33.2MB | 9280ms | 163ms | kotlin/native 1.8.21 |
nim | 1.nim | timeout | 0.0ms | 424.2MB | 3350ms | 1300ms | nim/clang 1.6.14 |
nim | 1.nim | timeout | 0.0ms | 423.4MB | 3330ms | 1317ms | nim 1.6.14 |
python | 1.py | timeout | 0.0ms | 20.3MB | 4980ms | 3ms | cpython 3.11.4 |
python | 1.py | timeout | 0.0ms | 17.3MB | 4983ms | 0ms | pyston 3.8.12 |
ruby | 1.rb | timeout | 0.0ms | 1163.0MB | 4197ms | 1267ms | truffleruby 22.3.1 |
v | 1.v | timeout | 0.0ms | 16.9MB | 5247ms | 4167ms | v/clang+gc 0.4.0 |
v | 1.v | timeout | 0.0ms | 21.1MB | 5210ms | 4150ms | v/clang 0.4.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
go | 1-m.go | 79ms | 17ms | 5.4MB | 130ms | 0ms | go 1.20.6 |
rust | 3-m.rs | 80ms | 7.5ms | 3.5MB | 137ms | 3ms | rustc 1.70.0 |
crystal | 1.cr | 97ms | 1.5ms | 7.7MB | 77ms | 10ms | crystal 1.9.0 |
rust | 5-m.rs | 101ms | 25ms | 3.5MB | 163ms | 7ms | rustc 1.70.0 |
wasm | 3.rs | 105ms | 0.2ms | 16.9MB | 90ms | 0ms | wasmtime 10.0.1 |
rust | 3.rs | 121ms | 1.0ms | 3.9MB | 110ms | 0ms | rustc 1.70.0 |
wasm | 3.rs | 143ms | 1.5ms | 29.9MB | 130ms | 0ms | wasmedgec 0.13.1 |
wasm | 3.rs | 165ms | 4.4ms | 58.6MB | 173ms | 10ms | node 18.16.1 |
typescript | 1.ts | 189ms | 2.7ms | 60.7MB | 173ms | 17ms | deno 1.35.1 |
rust | 4.rs | 212ms | 1.4ms | 2.2MB | 200ms | 0ms | rustc 1.70.0 |
rust | 1-m.rs | 214ms | 2.2ms | 2.8MB | 380ms | 17ms | rustc 1.70.0 |
javascript | 1.js | 215ms | 3.0ms | 61.3MB | 187ms | 27ms | node 20.4.0 |
ruby | 1.rb | 224ms | 4.0ms | 44.8MB | 180ms | 27ms | ruby/yjit 3.2.2 |
ruby | 1.rb | 233ms | 1.7ms | 44.4MB | 207ms | 10ms | ruby 3.2.2 |
javascript | 1.js | 235ms | 6.8ms | 102.0MB | 240ms | 13ms | bun 0.6.14 |
python | 1.py | 265ms | 7.9ms | 94.6MB | 230ms | 17ms | pypy 3.10.12 |
chapel | 1-m.chpl | 286ms | 15ms | 54.0MB | 510ms | 7ms | chpl 1.31.0 |
csharp | 1-m.cs | 349ms | 31ms | 61.8MB | 570ms | 27ms | dotnet/aot 7.0.306 |
go | 1.go | 477ms | 0.5ms | 65.4MB | 457ms | 3ms | tinygo 0.28.1 |
dart | 1.dart | 558ms | 6.3ms | 17.7MB | 527ms | 13ms | dart/exe 3.0.6 |
csharp | 1-m.cs | 570ms | 46ms | 84.9MB | 930ms | 40ms | dotnet 7.0.306 |
kotlin | 1-m.kt | 691ms | 31ms | 100.3MB | 1217ms | 37ms | kotlin/jvm 17.0.2 |
java | 1-m.java | 796ms | 16ms | 113.4MB | 1413ms | 57ms | openjdk 20 |
python | 1.py | 811ms | 6.1ms | 20.0MB | 787ms | 3ms | cpython 3.11.4 |
kotlin | 2-m.kt | 875ms | 33ms | 25.1MB | 1567ms | 33ms | kotlin/native 1.8.21 |
java | 1-m.java | 887ms | 100ms | 102.5MB | 1617ms | 37ms | openjdk 22 |
java | 1-m.java | 899ms | 17ms | 206.7MB | 1447ms | 160ms | openjdk/zgc 20 |
python | 1.py | 930ms | 2.5ms | 16.8MB | 910ms | 3ms | pyston 3.8.12 |
kotlin | 2-m.kt | 1011ms | 63ms | 97.7MB | 1837ms | 37ms | kotlin/jvm 17.0.2 |
kotlin | 1.kt | 1033ms | 12ms | 8.8MB | 1310ms | 50ms | kotlin/native 1.8.21 |
d | 1.d | 1328ms | 8.0ms | 8.3MB | 1313ms | 3ms | ldc2 1.32.2 |
d | 1.d | 1594ms | 11ms | 10.3MB | 1580ms | 3ms | dmd 2.104.1 |
v | 1-m.v | 3611ms | 865ms | 16.6MB | 3743ms | 2970ms | v/clang+gc 0.4.0 |
v | 1-m.v | 4091ms | 389ms | 16.9MB | 4267ms | 3377ms | v/clang 0.4.0 |
nim | 1.nim | timeout | 0.0ms | 423.3MB | 3447ms | 1203ms | nim/clang 1.6.14 |
nim | 1.nim | timeout | 0.0ms | 421.6MB | 3370ms | 1283ms | nim 1.6.14 |
ruby | 1.rb | timeout | 0.0ms | 1158.9MB | 4150ms | 1270ms | truffleruby 22.3.1 |