The Computer Language
Benchmarks Game

spectral-norm

We accept something intermediate between chaos and rigidity — enough flex & slop & play to allow for Haskell programs that are not just mechanically translated from Fortran; enough similarity in the basic workloads & tested results.

Programming language advocates and curious programmers have contributed new programs and introduced newer techniques. Look at the slower simple sequential programs, and  look at the parallel programs written for multicore, and  look at the low-level programs written for SIMD. Always look at the source code.

× source secs mem gz busy cpu load
1.0 Free Pascal 15.98 8 423 16.15 100% 0% 1% 0%
138 C gcc 15.99 1,100 383 16.09 0% 100% 1% 0%
151 C++ g++ #8 3.49 1,208 1278 13.90 99% 100% 100% 100%
156 C gcc #3 3.98 1,248 463 15.92 100% 100% 100% 100%
157 C gcc #5 1.98 1,252 569 7.87 99% 100% 99% 99%
157 C gcc #4 1.98 1,252 1139 7.88 99% 100% 99% 99%
159 C++ g++ #6 1.98 1,268 1044 7.89 100% 99% 99% 99%
172 Go #2 4.11 1,376 668 15.79 97% 96% 96% 96%
217 Fortran Intel #3 1.98 1,732 638 7.92 100% 100% 100% 100%
235 C++ g++ #5 2.00 1,880 1044 7.97 100% 100% 100% 100%
239 Free Pascal #2 3.98 1,912 542 15.84 99% 99% 99% 99%
267 Go #4 3.94 2,136 548 15.71 99% 100% 100% 99%
278 Rust #2 2.06 2,224 1110 8.01 98% 97% 97% 97%
288 Rust #5 2.00 2,300 1055 7.96 100% 99% 100% 99%
289 Rust #6 1.97 2,312 1126 7.87 99% 100% 100% 99%
292 Rust 2.05 2,336 1254 7.98 98% 98% 97% 98%
293 Rust #3 2.30 2,340 1053 8.86 96% 96% 96% 96%
302 Rust #4 2.31 2,416 817 9.21 100% 100% 100% 100%
347 Go 15.71 2,772 411 15.86 1% 100% 0% 0%
359 Lua 192.80 2,872 329 199.44 15% 85% 1% 2%
385 Fortran Intel #2 7.85 3,076 513 8.07 2% 100% 1% 0%
407 C++ g++ 16.07 3,256 452 16.22 1% 0% 0% 100%
436 Ada 2012 GNAT 15.70 3,488 716 15.89 1% 0% 0% 100%
465 OCaml #2 15.70 3,716 377 16.03 1% 1% 100% 0%
488 Haskell GHC #4 4.05 3,900 987 15.74 97% 97% 97% 98%
530 Substrate VM #2 5.56 4,236 950 21.92 98% 99% 99% 98%
539 Ada 2012 GNAT #3 4.02 4,308 1717 15.82 98% 98% 98% 99%
540 Ada 2012 GNAT #4 2.00 4,320 2770 7.90 99% 99% 99% 98%
644 Substrate VM 15.72 5,152 514 16.02 100% 0% 0% 2%
652 Chapel 3.98 5,212 310 15.77 99% 99% 99% 99%
747 Haskell GHC #2 15.78 5,972 403 16.80 100% 1% 2% 3%
  Matz's Ruby #4 46 min 6,072 326 46 min 66% 34% 0% 0%
  Matz's Ruby 39 min 6,080 292 39 min 98% 0% 2% 1%
  Perl #2 13 min 6,428 343 13 min 1% 0% 100% 0%
  Perl 162.17 7,060 333 164.10 1% 100% 0% 0%
  Perl #5 159.40 7,072 340 161.52 1% 0% 100% 0%
  Swift #3 3.96 8,080 601 15.78 99% 100% 100% 99%
  PHP #2 236.98 8,848 397 238.72 0% 0% 100% 0%
  Python 3 #6 10 min 9,120 328 10 min 21% 38% 42% 0%
  Dart aot 15.91 10,744 462 16.12 0% 100% 1% 0%
  Dart aot #5 15.75 10,784 489 15.95 0% 1% 1% 100%
  Perl #4 43.08 11,248 555 165.57 95% 95% 99% 95%
  Swift 15.70 12,900 438 15.99 0% 100% 1% 1%
  Lisp SBCL #2 4.00 16,464 915 15.77 99% 99% 99% 99%
  Lisp SBCL #5 3.99 16,472 899 15.75 99% 99% 98% 99%
  Perl #3 201.85 17,668 850 13 min 100% 100% 100% 100%
  Ruby 278.95 17,964 292 5 min 83% 13% 13% 6%
  Ruby #4 232.89 18,324 326 274.11 16% 92% 7% 2%
  Lisp SBCL #3 4.02 19,636 890 15.78 98% 98% 98% 98%
  Ruby #5 273.47 20,192 862 17 min 97% 98% 98% 97%
  Lisp SBCL 15.73 20,500 631 16.65 0% 1% 5% 100%
  PHP 33.12 24,140 1152 131.98 100% 100% 100% 100%
  PHP #3 60.44 25,944 1210 240.99 100% 100% 100% 100%
  Erlang HiPE 101.74 26,860 507 103.44 0% 100% 1% 0%
  Erlang HiPE #2 15.65 30,656 747 61.72 98% 99% 98% 99%
  Node js #3 15.77 31,596 381 15.95 1% 0% 0% 100%
  Node js #2 15.77 31,708 336 16.06 1% 0% 100% 1%
  Node js #5 15.77 31,708 393 15.92 0% 0% 1% 100%
  Node js 15.78 32,716 319 15.93 0% 100% 1% 0%
  TypeScript 15.83 33,192 388 16.49 4% 0% 0% 100%
  TypeScript #2 19.85 34,092 388 20.19 100% 0% 0% 1%
  C# .NET Core #3 4.11 36,056 878 15.90 96% 98% 98% 96%
  C# .NET Core #4 4.13 36,572 1102 15.95 96% 98% 97% 96%
  Java  #2 4.19 36,740 950 16.36 98% 97% 98% 98%
  Java 16.38 36,800 514 16.69 1% 0% 1% 100%
  C# .NET Core 15.89 36,908 459 16.08 2% 0% 0% 100%
  F# .NET Core #5 4.16 37,496 730 16.02 96% 95% 95% 99%
  F# .NET Core #2 4.16 37,716 853 15.96 96% 95% 94% 98%
  F# .NET Core #4 4.16 37,788 732 15.96 94% 98% 96% 94%
  F# .NET Core #3 4.57 37,868 721 17.59 96% 95% 95% 98%
  Racket 40.62 43,676 446 40.95 1% 100% 0% 0%
  Racket #2 38.08 46,184 532 38.45 0% 0% 1% 100%
  Racket #3 5.67 48,148 627 20.94 90% 98% 91% 91%
  Python 3 #5 175.91 51,700 443 11 min 99% 99% 99% 99%
  Lisp SBCL #4 10.62 54,152 891 40.35 95% 95% 95% 95%
  VW Smalltalk 91.43 54,540 642 92.27 0% 0% 100% 1%
  Node js #6 4.33 54,732 999 16.62 95% 97% 96% 96%
  Dart snapshot #5 15.81 75,796 489 16.05 0% 100% 1% 1%
  Dart snapshot 15.82 77,440 462 16.12 100% 1% 0% 1%
  Racket CS #3 64.14 79,088 627 238.47 94% 93% 93% 93%
  Pharo Smalltalk 99.73 79,760 674 101.05 54% 1% 1% 46%
  Racket CS #2 73.88 79,924 532 74.33 0% 100% 0% 1%
  Racket CS 93.79 82,508 446 94.66 0% 100% 0% 0%
  Dart 16.06 131,576 462 17.21 1% 5% 2% 99%
  Dart #5 16.06 132,012 489 16.75 1% 3% 2% 99%
  Julia #2 4.71 160,908 370 17.43 90% 99% 91% 90%
  Julia 4.77 183,540 401 17.06 86% 86% 86% 99%
  VW Smalltalk #2 34.05 246,008 1047 109.55 79% 80% 83% 79%
  Truffle Ruby #4 23.21 737,884 326 35.34 76% 35% 21% 21%
  JRuby #2 141.81 744,860 776 9 min 98% 98% 98% 97%
  JRuby 7 min 751,028 292 8 min 45% 3% 8% 48%
  Truffle Ruby 25.60 753,960 292 42.61 24% 69% 50% 24%
  JRuby #4 251.03 757,844 326 265.02 2% 44% 57% 2%
  Truffle Ruby #7 25.86 759,012 292 42.78 30% 86% 21% 28%
OCaml #3 Make Error
Matz's Ruby #5 Failed
Truffle Ruby #5 Timed Out