The Computer Language
25.03 Benchmarks Game

mandelbrot sorted-by "secs"

Always look at the source code.

(Lumpers and Splitters.)

Some of these programs are single-thread and some are multi-thread: compare "secs" and "cpu secs". Some of these programs are un-optimised and some are heavily optimised: sort-by "gz" source code size.

Some of these programs are "naked ffi" and some put that in a library. Some of these programs are high-level and some are hand-written vector instructions.

Always look at the source code.

  * possible hand-written vector instructions or "unsafe"
 
× source secs mem gz cpu secs
1.0 * C++g++ #4 0.89 37,941 3554 3.46
1.0 * C++ g++ 0.90 37,626 1797 3.48
1.1 Rust #4 0.95 35,598 1301 3.78
1.1 * C++ g++ #6 0.98 37,908 1014 3.88
1.2 Rust #6 1.08 36,426 1338 4.20
1.2 Rust #7 1.10 35,906 763 4.34
1.2 Rust #2 1.10 35,754 770 4.37
1.3 Rust #5 1.12 36,311 725 4.37
1.3 Rust #3 1.15 14,615 1013 4.57
1.3 Chapel #3 1.18 42,156 582 4.51
1.4 * C gcc #6 1.29 35,578 1147 5.11
1.5 * Swift #7 1.35 57,836 1147 5.29
1.6 * Haskell GHC #3 1.39 58,700 1985 5.44
1.7 * Swift #6 1.48 60,985 1147 5.80
1.7 Julia #7 1.54 357,138 629 4.85
1.8 Julia #2 1.57 355,762 634 4.95
1.8 Julia #3 1.61 376,463 589 5.17
1.8 C gcc #5 1.64 35,582 788 6.32
2.0 Julia #5 1.76 381,813 580 5.83
2.3 Rust 2.01 42,631 874 7.89
2.3 Julia #4 2.07 368,173 583 5.18
2.5 Julia #6 2.25 368,599 571 5.87
2.6 C++ g++ #0 2.36 38,281 2752 9.31
3.0 Intel Fortran #6 2.72 85,975 669 8.55
3.3 * C# naot #7 2.96 39,088 915 11.73
3.9 * C gcc 3.50 35,017 828 13.93
3.9 * C gcc #4 3.50 35,197 805 13.89
3.9 * C gcc #7 3.51 35,447 1000 13.93
4.0 C++ g++ #9 3.53 37,863 732 13.59
4.0 * C gcc #3 3.55 34,873 769 14.12
4.2 * C# naot 3.76 39,240 1980 14.95
4.2 * C# naot #9 3.77 38,797 822 14.94
4.2 Go #4 3.77 37,970 912 15.01
4.2 Go #3 3.78 38,101 900 15.02
4.4 Free Pascal #5 3.91 35,529 980 15.52
4.4 Java naot #6 3.96 58,348 808 15.66
4.5 Ada 2012 GNAT #3 4.01 41,099 1825 15.79
4.5 Java naot #2 4.01 58,278 802 15.87
4.5 C# naot #5 4.02 40,743 851 15.88
4.5 Node.js #3 4.05 144,757 1128 15.86
4.6 C gcc #9 4.07 35,394 700 15.72
4.6 Intel Fortran #7 4.09 85,639 965 16.19
4.7 * F# #6 4.18 77,173 943 16.25
4.7 Lisp SBCL #4 4.20 60,654 2453 16.67
4.8 Java naot #4 4.27 82,633 667 15.75
4.8 Dart aot #4 4.29 45,175 988 16.80
5.0 * F# 4.42 77,042 890 17.21
5.1 Lisp SBCL 4.53 60,678 2478 16.61
5.5 C++ g++ #7 4.87 38,048 749 13.29
5.6 Go 5.04 35,787 829 20.04
7.4 Free Pascal #7 6.61 39,596 956 26.26
7.4 Haskell GHC #2 6.64 51,057 789 26.39
7.5 Chapel 6.69 41,697 447 26.49
7.5 C# naot #3 6.69 39,715 722 26.52
7.7 Go #2 6.87 35,549 843 27.30
7.7 Go #6 6.91 35,119 707 27.47
8.0 F# #2 7.17 49,979 1054 28.09
8.1 Swift #5 7.27 49,312 665 27.09
8.4 Free Pascal #6 7.47 38,654 809 29.76
8.5 OCaml 7.60 64,643 723 30.20
8.7 Java naot #3 7.80 63,054 910 30.99
11 Lisp SBCL #3 9.82 60,191 900 26.17
11 Intel Fortran #4 9.89 86,360 626 25.29
12 * Racket #4 10.68 190,411 810 41.52
12 Free Pascal 11.06 35,152 853 29.61
12 Free Pascal #2 11.07 35,160 853 29.61
13 Dart aot #6 11.74 84,529 914 31.43
15 C++ g++ #5 13.47 36,884 596 13.47
18 Dart aot #3 15.69 17,887 620 15.69
19 C++ g++ #2 16.96 36,704 700 16.95
28 C gcc #8 25.17 2,355 412 25.16
29 C# naot #8 25.58 6,115 492 25.56
29 Swift #8 25.62 12,784 426 25.60
30 Swift 26.55 12,780 400 26.53
30 Free Pascal #3 26.61 319 533 26.60
30 Julia 26.66 339,132 379 26.69
30 Go #8 26.70 3,199 500 26.76
31 C++ g++ #3 27.38 5,181 421 27.38
32 Ada 2012 GNAT #2 28.46 5,816 583 28.45
32 Java naot #8 28.57 16,392 441 28.56
32 OCaml #6 28.79 4,776 450 28.78
33 Node.js #2 29.41 73,617 422 29.42
34 Dart aot #2 30.25 11,768 494 30.24
34 Java naot 30.59 19,927 671 30.57
37 Intel Fortran #5 32.66 47,174 528 32.65
39 * Racket #3 34.91 127,980 808 34.85
41 Haskell GHC 36.39 271,733 628 37.10
53 C# naot #2 47.60 6,148 504 47.58
56 Racket 49.62 125,587 524 49.55
58 * Racket #2 51.46 125,395 592 51.40
60 Erlang #4 53.86 98,140 813 214.33
64 Erlang #3 56.92 92,709 798 226.57
76 PHP #3 68.29 53,531 881 272.31
77 Node.js 69.02 69,100 380 69.10
79 Node.js #8 70.31 68,338 412 70.38
134 Dart aot 119.40 11,932 462 119.40
160 Ruby #5 143.13 118,436 978 9 min
178 Lua #6 159.01 652,796 630 9 min
188 Ruby #2 167.51 126,730 887 11 min
200 Dart aot #8 178.87 11,768 471 178.93
205 Python 3 #7 182.94 62,173 698 12 min
266 Python 3 #2 237.64 230,973 790 15 min
289 PHP 258.19 16,437 452 258.12
292 Python 3 #5 260.63 61,620 463 17 min
385 Pharo Smalltalk #2 5 min 175,542 574 5 min
410 Pharo Smalltalk 6 min 176,222 573 6 min
475 PHP #8 7 min 49,336 419 7 min
546 Lua #3 8 min 3,711 364 8 min
554 Perl 8 min 114,569 592 32 min
561 Lua 8 min 3,707 365 8 min
586 Lua #2 8 min 3,232 373 8 min
649 Ruby #4 9 min 169,955 853 9 min
  Python 3 #3 14 min 45,085 319 14 min
  Ruby #8 15 min 50,926 364 15 min
  Python 3 #8 26 min 45,031 379 26 min
  Ruby #3 29 min 50,524 313 28 min
Erlang Bad Output
Erlang #2 Bad Output
Ruby #6 Timed Out
Ruby #7 Timed Out
Swift #3 Bad Output