Current benchmark data was generated on Mon Dec 30 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 |
---|---|---|---|---|---|---|---|
zig | 1.zig | 87ms | 0.7ms | 1.1MB | 80ms | 0ms | zig 0.13.0 |
rust | 5c-m.rs | 89ms | 1.0ms | 8.3MB | 247ms | 0ms | rustc 1.83.0 |
rust | 5-m.rs | 98ms | 1.1ms | 4.8MB | 323ms | 3ms | rustc 1.83.0 |
chapel | 5-m.chpl | 112ms | 0.8ms | 32.4MB | 197ms | 0ms | chpl 1.31.0 |
go | 3-m.go | 127ms | 0.6ms | 5.4MB | 400ms | 0ms | go 1.23.4 |
csharp | 5-m.cs | 128ms | 5.1ms | 32.6MB | 353ms | 83ms | dotnet/aot 9.0.101 |
swift | 3-m.swift | 138ms | 0.6ms | 24.8MB | 380ms | 10ms | swift 6.0.3 |
rust | 1c.rs | 162ms | 0.9ms | 1.9MB | 150ms | 0ms | rustc 1.83.0 |
nim | 2.nim | 184ms | 1.6ms | 1.5MB | 170ms | 0ms | nim 2.2.0 |
rust | 1.rs | 196ms | 0.6ms | 1.9MB | 180ms | 0ms | rustc 1.83.0 |
d | 1.d | 196ms | 2.2ms | 49.3MB | 180ms | 3ms | ldc2 1.40.0 |
csharp | 5-m.cs | 200ms | 2.9ms | 49.2MB | 467ms | 120ms | dotnet 9.0.101 |
wasm | 1.rs | 234ms | 1.6ms | 19.0MB | 220ms | 0ms | wasmtime 28.0.0 |
nim | 2.nim | 239ms | 0.6ms | 1.8MB | 227ms | 0ms | nim/clang 2.2.0 |
csharp | 5-m.cs | 254ms | 11ms | 60.7MB | 697ms | 107ms | mono 6.12.0 |
ocaml | 6.ml | 346ms | 0.8ms | 24.8MB | 333ms | 0ms | ocaml 5.2.1 |
dart | 1.dart | 360ms | 1.4ms | 8.6MB | 347ms | 0ms | dart/exe 3.6.0 |
java | 4.java | 451ms | 5.2ms | 47.6MB | 530ms | 20ms | openjdk 21 |
java | 4.java | 454ms | 3.6ms | 49.0MB | 547ms | 10ms | openjdk 23 |
java | 4-m.java | 463ms | 14ms | 105.1MB | 660ms | 40ms | graal/jvm 17.0.8 |
v | 1.v | 500ms | 1.4ms | 1.3MB | 483ms | 0ms | v/clang 0.4.9 |
v | 1.v | 538ms | 4.2ms | 2.1MB | 523ms | 0ms | v/clang+gc 0.4.9 |
crystal | 2.cr | 543ms | 3.5ms | 3.4MB | 413ms | 110ms | crystal 1.14.0 |
java | 4.java | 563ms | 2.0ms | 46.9MB | 530ms | 133ms | openjdk/zgc 21 |
nim | 1.nim | 572ms | 3.7ms | 1.8MB | 443ms | 117ms | nim/clang 2.2.0 |
nim | 1.nim | 597ms | 1.9ms | 1.5MB | 467ms | 117ms | nim 2.2.0 |
d | 1.d | 624ms | 2.2ms | 49.0MB | 600ms | 13ms | dmd 2.109.1 |
crystal | 1.cr | 731ms | 4.9ms | 14.7MB | 607ms | 107ms | crystal 1.14.0 |
python | 1.py | 1896ms | 11ms | 88.3MB | 1847ms | 33ms | pypy 3.10.14 |
ruby | 6.rb | 2042ms | 9.8ms | 23.1MB | 2013ms | 10ms | ruby/yjit 3.4.1 |
ruby | 6-m.rb | 2044ms | 111ms | 402.5MB | 5243ms | 363ms | truffleruby 24.1.1 |
typescript | 1.ts | 2125ms | 34ms | 59.6MB | 1970ms | 153ms | deno 2.1.4 |
haxe | 1.hx | 2430ms | 12ms | 27.6MB | 2263ms | 247ms | haxe/cpp 4.3.6 |
python | 5-m.py | 2474ms | 26ms | 12.5MB | 3627ms | 973ms | pyston 3.8.12 |
python | 5-m.py | 2831ms | 4.6ms | 64.9MB | 4040ms | 807ms | pypy 3.10.14 |
python | 1.py | 2999ms | 24ms | 8.1MB | 2983ms | 0ms | pyston 3.8.12 |
python | 5-m.py | 3390ms | 14ms | 13.9MB | 4597ms | 887ms | cpython 3.13.1 |
perl | 1.pl | 3601ms | 9.2ms | 10.9MB | 3590ms | 0ms | perl 5.40.0 |
ruby | 6.rb | 3669ms | 34ms | 22.5MB | 3643ms | 10ms | ruby 3.4.1 |
python | 1.py | 4550ms | 39ms | 8.6MB | 4537ms | 0ms | cpython 3.13.1 |
haxe | 1.hx | timeout | 0.0ms | 5.2MB | 4253ms | 950ms | haxe/hl/c 4.3.6 |
haxe | 1.hx | timeout | 0.0ms | 5.7MB | 4350ms | 877ms | haxe/hl/jit 1.14.0 |
lang | code | time | stddev | peak-mem mem | time(user) | time(sys) | compiler compiler/runtime |
---|---|---|---|---|---|---|---|
zig | 1.zig | 11ms | 0.1ms | 1.1MB | 0ms | 0ms | zig 0.13.0 |
rust | 5c-m.rs | 16ms | 0.5ms | 4.8MB | 20ms | 0ms | rustc 1.83.0 |
rust | 5-m.rs | 17ms | 1.2ms | 4.8MB | 27ms | 0ms | rustc 1.83.0 |
go | 3-m.go | 18ms | 0.3ms | 5.5MB | 37ms | 0ms | go 1.23.4 |
rust | 1c.rs | 19ms | 0.3ms | 1.9MB | 10ms | 0ms | rustc 1.83.0 |
nim | 2.nim | 21ms | 0.3ms | 1.5MB | 10ms | 0ms | nim 2.2.0 |
rust | 1.rs | 22ms | 0.1ms | 1.9MB | 10ms | 0ms | rustc 1.83.0 |
d | 1.d | 24ms | 0.8ms | 10.5MB | 13ms | 0ms | ldc2 1.40.0 |
nim | 2.nim | 25ms | 0.1ms | 1.8MB | 13ms | 0ms | nim/clang 2.2.0 |
csharp | 5-m.cs | 27ms | 1.0ms | 25.2MB | 37ms | 17ms | dotnet/aot 9.0.101 |
chapel | 5.chpl | 28ms | 0.3ms | 32.4MB | 17ms | 3ms | chpl 1.31.0 |
wasm | 1.rs | 31ms | 0.9ms | 19.0MB | 23ms | 0ms | wasmtime 28.0.0 |
swift | 3.swift | 36ms | 0.1ms | 18.1MB | 33ms | 0ms | swift 6.0.3 |
ocaml | 6.ml | 38ms | 0.1ms | 7.3MB | 27ms | 0ms | ocaml 5.2.1 |
dart | 1.dart | 43ms | 1.1ms | 8.6MB | 30ms | 0ms | dart/exe 3.6.0 |
v | 1.v | 52ms | 0.3ms | 1.3MB | 43ms | 0ms | v/clang 0.4.9 |
v | 1.v | 57ms | 2.4ms | 2.1MB | 50ms | 0ms | v/clang+gc 0.4.9 |
crystal | 2.cr | 58ms | 1.3ms | 3.4MB | 33ms | 13ms | crystal 1.14.0 |
nim | 1.nim | 62ms | 3.4ms | 1.8MB | 40ms | 10ms | nim/clang 2.2.0 |
nim | 1.nim | 62ms | 0.6ms | 1.5MB | 40ms | 7ms | nim 2.2.0 |
csharp | 5-m.cs | 64ms | 4.7ms | 46.9MB | 83ms | 20ms | dotnet 9.0.101 |
d | 1.d | 66ms | 0.7ms | 12.1MB | 57ms | 0ms | dmd 2.109.1 |
csharp | 5-m.cs | 72ms | 4.0ms | 42.9MB | 103ms | 23ms | mono 6.12.0 |
crystal | 1.cr | 77ms | 0.9ms | 4.5MB | 50ms | 13ms | crystal 1.14.0 |
java | 4.java | 125ms | 0.4ms | 46.8MB | 163ms | 17ms | openjdk 21 |
java | 4.java | 125ms | 0.6ms | 47.6MB | 173ms | 10ms | openjdk 23 |
java | 4-m.java | 132ms | 11ms | 97.1MB | 180ms | 37ms | graal/jvm 17.0.8 |
java | 4.java | 238ms | 8.8ms | 43.8MB | 153ms | 140ms | openjdk/zgc 21 |
typescript | 1.ts | 242ms | 5.4ms | 61.2MB | 217ms | 27ms | deno 2.1.4 |
python | 1.py | 252ms | 5.8ms | 63.5MB | 227ms | 17ms | pypy 3.10.14 |
ruby | 6.rb | 256ms | 0.8ms | 15.2MB | 230ms | 13ms | ruby/yjit 3.4.1 |
haxe | 1.hx | 258ms | 1.6ms | 25.5MB | 223ms | 30ms | haxe/cpp 4.3.6 |
python | 1.py | 310ms | 1.9ms | 8.1MB | 297ms | 0ms | pyston 3.8.12 |
python | 5-m.py | 311ms | 4.2ms | 12.5MB | 410ms | 137ms | pyston 3.8.12 |
perl | 1.pl | 376ms | 1.7ms | 6.8MB | 360ms | 0ms | perl 5.40.0 |
python | 5-m.py | 397ms | 2.8ms | 13.8MB | 483ms | 127ms | cpython 3.13.1 |
ruby | 6.rb | 419ms | 6.7ms | 14.5MB | 400ms | 7ms | ruby 3.4.1 |
python | 1.py | 494ms | 18ms | 8.6MB | 480ms | 0ms | cpython 3.13.1 |
python | 5-m.py | 539ms | 0.3ms | 65.0MB | 810ms | 283ms | pypy 3.10.14 |
haxe | 1.hx | 651ms | 2.0ms | 5.4MB | 543ms | 123ms | haxe/hl/c 4.3.6 |
haxe | 1.hx | 690ms | 5.2ms | 5.7MB | 577ms | 127ms | haxe/hl/jit 1.14.0 |
ruby | 6-m.rb | 819ms | 5.3ms | 387.6MB | 1987ms | 200ms | truffleruby 24.1.1 |