All spectral-norm problem benchmarks

Current benchmark data was generated on Thu May 01 2025, full log can be found HERE

CONTRIBUTIONS are WELCOME!

[x86_64][4 cores] AMD EPYC 7763 64-Core Processor (Model 1)

* -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.)

spectral-norm

Input: 8000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
cpp 8-m.cpp 469ms 2.7ms 3.4MB 1823ms 0ms clang++ 14.0.0-1ubuntu1.1
rust 8-m.rs 492ms 0.2ms 2.5MB 1903ms 3ms rustc 1.88.0-nightly
rust 7-m.rs 501ms 0.3ms 2.1MB 1940ms 0ms rustc 1.86.0
cpp 8-m.cpp 504ms 36ms 2.1MB 1933ms 0ms g++ 11.4.0
c 3-m.c 739ms 2.6ms 2.0MB 2903ms 0ms gcc 15.1.0
cpp 6-im.cpp 919ms 0.8ms 3.4MB 3610ms 0ms clang++ 14.0.0-1ubuntu1.1
cpp 6-im.cpp 921ms 0.4ms 2.3MB 3627ms 0ms g++ 11.4.0
c 6-im.c 958ms 3.1ms 2.0MB 3763ms 0ms gcc 15.1.0
rust 8.rs 992ms 0.2ms 2.5MB 980ms 0ms rustc 1.88.0-nightly
c 4-m.c 997ms 13ms 2.0MB 3907ms 0ms gcc 15.1.0
c 6-im.c 1028ms 44ms 3.3MB 4000ms 10ms clang 14.0.0-1ubuntu1.1
c 4-m.c 1124ms 4.6ms 3.3MB 4410ms 3ms clang 14.0.0-1ubuntu1.1
c 5-im.c 1146ms 2.8ms 2.0MB 4513ms 0ms gcc 15.1.0
c 5-im.c 1331ms 1.7ms 3.1MB 5233ms 10ms clang 14.0.0-1ubuntu1.1
c 3-m.c 1851ms 34ms 3.3MB 7240ms 17ms clang 14.0.0-1ubuntu1.1
csharp 3-m.cs 1857ms 0.8ms 10.5MB 7263ms 10ms dotnet/aot 9.0.203
go 4-m.go 1913ms 15ms 5.5MB 7410ms 3ms go 1.24.2
csharp 3-m.cs 1927ms 7.1ms 30.0MB 7350ms 17ms dotnet 9.0.203
chapel 1-m.chpl 1928ms 23ms 28.9MB 3827ms 0ms chpl 1.31.0
rust 2-m.rs 1958ms 7.1ms 2.3MB 7653ms 3ms rustc 1.86.0
java 2-m.java 1991ms 5.9ms 47.8MB 7610ms 23ms openjdk 21
java 2-m.java 1993ms 9.7ms 48.4MB 7613ms 30ms openjdk 23
rust 7.rs 2070ms 8.8ms 1.9MB 2060ms 0ms rustc 1.86.0
java 2-m.java 2124ms 14ms 45.4MB 7600ms 157ms openjdk/zgc 21
javascript 6-m.js 2187ms 17ms 115.2MB 8297ms 57ms node 23.11.0
java 2-m.java 2505ms 22ms 93.6MB 9400ms 40ms graal/jvm 17.0.8
nim 1.nim 3589ms 1.3ms 1.6MB 3580ms 0ms nim/clang 2.2.4
d 1.d 3595ms 8.5ms 4.0MB 3583ms 0ms ldc2 1.40.1
odin 1.odin 3599ms 3.9ms 2.9MB 3590ms 0ms odin 2024
nim 1.nim 3603ms 8.0ms 1.4MB 3597ms 0ms nim 2.2.4
d 1.d 3629ms 18ms 6.3MB 3620ms 0ms dmd 2.111.0
go 1.go 3658ms 17ms 5.6MB 3650ms 0ms go 1.24.2
zig 1.zig 3689ms 4.3ms 1.4MB 3683ms 0ms zig 0.14.0
wasm 2.rs 3694ms 3.7ms 17.6MB 3683ms 0ms wasmtime 32.0.0
chapel 1.chpl 3719ms 13ms 28.8MB 3713ms 0ms chpl 1.31.0
crystal 1.cr 3764ms 9.2ms 4.6MB 3750ms 0ms crystal 1.16.2
dart 1.dart 3773ms 11ms 6.4MB 3760ms 0ms dart/exe 3.7.3
haxe 1.hx 3903ms 13ms 3.3MB 3887ms 0ms haxe/hl/c 4.3.6
typescript 7.ts 4058ms 51ms 53.9MB 4040ms 10ms deno 2.3.1
lua 1.lua 4063ms 2.9ms 2.5MB 4053ms 0ms luajit 2.1.0-beta3
rust 2.rs 4205ms 2.7ms 2.0MB 4197ms 0ms rustc 1.86.0
dart 2.dart 4350ms 7.7ms 6.4MB 4340ms 0ms dart/exe 3.7.3
ocaml 2.ml 4563ms 8.7ms 6.4MB 4553ms 0ms ocaml 5.3.0
csharp 3-m.cs 4664ms 7.4ms 25.5MB 18030ms 17ms mono 6.12.0
wasm 7.rs 4898ms 2.5ms 18.1MB 4883ms 0ms wasmtime 32.0.0
go 1.go timeout 0.0ms 0.5MB 4990ms 0ms tinygo 0.37.0
haxe 1.hx timeout 0.0ms 7.0MB 4990ms 0ms haxe/cpp 4.3.6
haxe 1.hx timeout 0.0ms 3.8MB 4990ms 0ms haxe/hl/jit 1.15.0
lua 1.lua timeout 0.0ms 2.5MB 4990ms 0ms lua 5.4.7
perl 4.pl timeout 0.0ms 9.8MB 19800ms 10ms perl 5.40.2
python 8.py timeout 0.0ms 14.9MB 40ms 7ms cpython 3.13.3
python 8.py timeout 0.0ms 95.8MB 763ms 77ms pypy 3.10.16
python 8.py timeout 0.0ms 14.1MB 30ms 10ms pyston 3.8.12
ruby 4.rb timeout 0.0ms 12.9MB 4980ms 3ms ruby 3.4.3
ruby 4.rb timeout 0.0ms 13.5MB 4983ms 3ms ruby/yjit 3.4.3
ruby 4.rb timeout 0.0ms 412.4MB 5180ms 223ms truffleruby 24.2.1
v 1.v timeout 0.0ms 2.8MB 4990ms 0ms v/clang+gc 0.4.10
v 1.v timeout 0.0ms 1.6MB 4990ms 0ms v/clang 0.4.10

Input: 4000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
cpp 8-m.cpp 124ms 1.3ms 3.4MB 460ms 0ms clang++ 14.0.0-1ubuntu1.1
rust 8-m.rs 127ms 0.7ms 2.3MB 467ms 3ms rustc 1.88.0-nightly
cpp 8-m.cpp 128ms 0.2ms 2.0MB 480ms 0ms g++ 11.4.0
rust 7-m.rs 129ms 0.3ms 2.3MB 477ms 3ms rustc 1.86.0
c 3-m.c 195ms 2.1ms 2.0MB 740ms 0ms gcc 15.1.0
cpp 6-im.cpp 238ms 1.7ms 3.4MB 907ms 0ms clang++ 14.0.0-1ubuntu1.1
cpp 6-im.cpp 240ms 4.3ms 2.1MB 917ms 0ms g++ 11.4.0
c 6-im.c 246ms 0.9ms 2.0MB 940ms 0ms gcc 15.1.0
rust 8.rs 251ms 1.3ms 2.1MB 240ms 0ms rustc 1.88.0-nightly
c 4-m.c 260ms 2.9ms 2.0MB 993ms 0ms gcc 15.1.0
c 6-im.c 261ms 6.0ms 3.3MB 993ms 0ms clang 14.0.0-1ubuntu1.1
c 4-m.c 288ms 1.3ms 3.1MB 1107ms 0ms clang 14.0.0-1ubuntu1.1
c 5-im.c 298ms 5.3ms 2.0MB 1147ms 0ms gcc 15.1.0
c 5-im.c 347ms 7.1ms 3.3MB 1323ms 0ms clang 14.0.0-1ubuntu1.1
csharp 3-m.cs 473ms 1.1ms 10.4MB 1810ms 0ms dotnet/aot 9.0.203
c 3-m.c 486ms 22ms 3.1MB 1843ms 7ms clang 14.0.0-1ubuntu1.1
go 4-m.go 489ms 15ms 5.5MB 1830ms 0ms go 1.24.2
rust 2-m.rs 492ms 0.4ms 2.3MB 1903ms 3ms rustc 1.86.0
chapel 1-m.chpl 492ms 2.8ms 28.8MB 960ms 0ms chpl 1.31.0
rust 7.rs 517ms 2.2ms 1.9MB 510ms 0ms rustc 1.86.0
csharp 3-m.cs 536ms 6.8ms 29.8MB 1880ms 10ms dotnet 9.0.203
java 2-m.java 600ms 7.0ms 47.8MB 2137ms 20ms openjdk 21
java 2-m.java 609ms 4.3ms 48.7MB 2157ms 23ms openjdk 23
javascript 6-m.js 649ms 2.4ms 112.8MB 2323ms 50ms node 23.11.0
java 2-m.java 729ms 2.4ms 45.4MB 2157ms 140ms openjdk/zgc 21
java 2-m.java 768ms 0.7ms 93.5MB 2703ms 37ms graal/jvm 17.0.8
nim 1.nim 899ms 0.2ms 1.5MB 890ms 0ms nim/clang 2.2.4
d 1.d 901ms 1.9ms 3.5MB 890ms 0ms ldc2 1.40.1
odin 1.odin 903ms 2.9ms 2.3MB 893ms 0ms odin 2024
nim 1.nim 904ms 4.4ms 1.3MB 893ms 0ms nim 2.2.4
d 1.d 923ms 7.1ms 5.3MB 913ms 0ms dmd 2.111.0
zig 1.zig 923ms 3.3ms 1.3MB 913ms 0ms zig 0.14.0
wasm 2.rs 934ms 2.7ms 17.7MB 920ms 0ms wasmtime 32.0.0
go 1.go 941ms 32ms 3.5MB 933ms 0ms go 1.24.2
dart 1.dart 944ms 0.8ms 6.3MB 933ms 0ms dart/exe 3.7.3
chapel 1.chpl 944ms 3.9ms 28.8MB 937ms 0ms chpl 1.31.0
crystal 1.cr 950ms 8.9ms 4.4MB 940ms 0ms crystal 1.16.2
haxe 1.hx 983ms 1.0ms 3.1MB 970ms 0ms haxe/hl/c 4.3.6
lua 1.lua 1023ms 1.2ms 2.4MB 1013ms 0ms luajit 2.1.0-beta3
typescript 7.ts 1036ms 5.5ms 56.1MB 1023ms 10ms deno 2.3.1
rust 2.rs 1053ms 0.4ms 2.0MB 1043ms 0ms rustc 1.86.0
dart 2.dart 1092ms 3.1ms 6.1MB 1083ms 0ms dart/exe 3.7.3
ocaml 2.ml 1146ms 6.2ms 6.1MB 1137ms 0ms ocaml 5.3.0
csharp 3-m.cs 1213ms 6.5ms 25.6MB 4547ms 10ms mono 6.12.0
wasm 7.rs 1229ms 0.8ms 19.5MB 1217ms 0ms wasmtime 32.0.0
v 1.v 1286ms 2.9ms 1.5MB 1277ms 0ms v/clang 0.4.10
v 1.v 1297ms 1.5ms 2.5MB 1290ms 0ms v/clang+gc 0.4.10
go 1.go 1397ms 1.8ms 0.5MB 1390ms 0ms tinygo 0.37.0
haxe 1.hx 2399ms 1.5ms 6.5MB 2390ms 0ms haxe/cpp 4.3.6
ruby 4.rb 4838ms 9.1ms 424.1MB 5130ms 203ms truffleruby 24.2.1
haxe 1.hx timeout 0.0ms 3.8MB 4990ms 0ms haxe/hl/jit 1.15.0
lua 1.lua timeout 0.0ms 2.1MB 4990ms 0ms lua 5.4.7
perl 4.pl timeout 0.0ms 10.0MB 19560ms 13ms perl 5.40.2
python 8.py timeout 0.0ms 14.5MB 43ms 10ms cpython 3.13.3
python 8.py timeout 0.0ms 96.4MB 1267ms 177ms pypy 3.10.16
python 8.py timeout 0.0ms 13.7MB 53ms 17ms pyston 3.8.12
ruby 4.rb timeout 0.0ms 12.9MB 4980ms 7ms ruby 3.4.3
ruby 4.rb timeout 0.0ms 13.5MB 4983ms 3ms ruby/yjit 3.4.3

Input: 2000

lang code time stddev peak-mem mem time(user) time(sys) compiler compiler/runtime
rust 8-m.rs 35ms 0.0ms 2.1MB 110ms 0ms rustc 1.88.0-nightly
rust 7-m.rs 36ms 0.1ms 2.1MB 113ms 0ms rustc 1.86.0
cpp 8-m.cpp 39ms 0.1ms 2.0MB 130ms 0ms g++ 11.4.0
cpp 8-m.cpp 40ms 8.1ms 3.5MB 117ms 0ms clang++ 14.0.0-1ubuntu1.1
c 3-m.c 56ms 0.5ms 2.0MB 200ms 0ms gcc 15.1.0
rust 8.rs 65ms 0.1ms 2.0MB 60ms 0ms rustc 1.88.0-nightly
cpp 6-im.cpp 67ms 0.1ms 2.1MB 240ms 0ms g++ 11.4.0
cpp 6-im.cpp 68ms 4.7ms 3.3MB 230ms 0ms clang++ 14.0.0-1ubuntu1.1
c 6-im.c 70ms 0.6ms 3.3MB 243ms 0ms clang 14.0.0-1ubuntu1.1
c 4-m.c 72ms 0.5ms 2.0MB 260ms 0ms gcc 15.1.0
c 6-im.c 75ms 11ms 2.0MB 257ms 0ms gcc 15.1.0
c 4-m.c 79ms 3.5ms 3.3MB 280ms 0ms clang 14.0.0-1ubuntu1.1
c 5-im.c 81ms 1.2ms 2.0MB 293ms 0ms gcc 15.1.0
c 5-im.c 91ms 0.1ms 3.1MB 330ms 0ms clang 14.0.0-1ubuntu1.1
c 3-m.c 124ms 3.0ms 3.3MB 450ms 0ms clang 14.0.0-1ubuntu1.1
go 4-m.go 125ms 0.5ms 5.6MB 453ms 0ms go 1.24.2
rust 2-m.rs 127ms 0.2ms 2.1MB 470ms 0ms rustc 1.86.0
csharp 3-m.cs 127ms 1.6ms 10.5MB 450ms 0ms dotnet/aot 9.0.203
rust 7.rs 133ms 2.9ms 1.8MB 123ms 0ms rustc 1.86.0
chapel 1-m.chpl 134ms 1.5ms 28.9MB 247ms 0ms chpl 1.31.0
csharp 3-m.cs 181ms 4.2ms 28.5MB 503ms 10ms dotnet 9.0.203
nim 1.nim 227ms 0.6ms 1.5MB 220ms 0ms nim/clang 2.2.4
d 1.d 228ms 0.9ms 3.1MB 220ms 0ms ldc2 1.40.1
odin 1.odin 228ms 0.8ms 1.9MB 220ms 0ms odin 2024
nim 1.nim 228ms 1.2ms 1.3MB 220ms 0ms nim 2.2.4
zig 1.zig 232ms 0.1ms 1.3MB 220ms 0ms zig 0.14.0
d 1.d 233ms 1.4ms 4.9MB 220ms 0ms dmd 2.111.0
wasm 2.rs 239ms 1.7ms 17.4MB 223ms 0ms wasmtime 32.0.0
go 1.go 239ms 3.5ms 3.5MB 230ms 0ms go 1.24.2
crystal 1.cr 241ms 2.8ms 3.9MB 230ms 0ms crystal 1.16.2
dart 1.dart 241ms 1.0ms 6.4MB 230ms 0ms dart/exe 3.7.3
chapel 1.chpl 247ms 2.2ms 28.8MB 240ms 0ms chpl 1.31.0
java 2-m.java 251ms 5.6ms 47.5MB 753ms 17ms openjdk 21
haxe 1.hx 252ms 2.3ms 3.0MB 240ms 0ms haxe/hl/c 4.3.6
java 2-m.java 258ms 5.3ms 48.9MB 763ms 20ms openjdk 23
lua 1.lua 262ms 0.6ms 2.3MB 250ms 0ms luajit 2.1.0-beta3
rust 2.rs 266ms 1.6ms 2.0MB 257ms 0ms rustc 1.86.0
javascript 6-m.js 270ms 4.4ms 109.9MB 840ms 50ms node 23.11.0
dart 2.dart 279ms 3.2ms 6.3MB 270ms 0ms dart/exe 3.7.3
typescript 7.ts 283ms 1.6ms 52.5MB 267ms 7ms deno 2.3.1
ocaml 2.ml 293ms 2.5ms 5.2MB 283ms 0ms ocaml 5.3.0
java 2-m.java 311ms 24ms 94.6MB 957ms 37ms graal/jvm 17.0.8
wasm 7.rs 315ms 1.9ms 18.2MB 300ms 0ms wasmtime 32.0.0
v 1.v 324ms 0.5ms 1.5MB 313ms 0ms v/clang 0.4.10
v 1.v 326ms 0.3ms 2.5MB 317ms 0ms v/clang+gc 0.4.10
go 1.go 351ms 1.0ms 0.4MB 343ms 0ms tinygo 0.37.0
csharp 3-m.cs 353ms 13ms 25.5MB 1193ms 10ms mono 6.12.0
java 2-m.java 372ms 10ms 45.2MB 733ms 140ms openjdk/zgc 21
haxe 1.hx 603ms 0.9ms 5.4MB 590ms 0ms haxe/cpp 4.3.6
ruby 4.rb 1417ms 19ms 373.9MB 1763ms 130ms truffleruby 24.2.1
python 8-m.py 1935ms 16ms 93.6MB 6317ms 250ms pypy 3.10.16
haxe 1.hx 2297ms 2.9ms 3.8MB 2287ms 0ms haxe/hl/jit 1.15.0
perl 4-m.pl 3426ms 12ms 9.5MB 13310ms 7ms perl 5.40.2
lua 1.lua timeout 0.0ms 2.0MB 4990ms 0ms lua 5.4.7
python 8.py timeout 0.0ms 14.3MB 83ms 17ms cpython 3.13.3
python 8.py timeout 0.0ms 13.1MB 137ms 30ms pyston 3.8.12
ruby 4.rb timeout 0.0ms 12.9MB 4980ms 7ms ruby 3.4.3
ruby 4.rb timeout 0.0ms 13.8MB 4980ms 3ms ruby/yjit 3.4.3