Ubuntu : Intel® Q6600® one core |
Each chart bar shows how many times more Time or how many times more Memory one unidentified ↓ mandelbrot program used, compared to the program that used least Time or the program that used least Memory.
This table shows 5 measurements - CPU Time, Elapsed Time, Memory, Code and ~ CPU Load.
Compare how much Memory the mandelbrot programs used - sort Memory KB. Compare how much Code the programs used - sort Code B
Column × shows how many times more each program used compared to the program that used least.
| sort | sort | sort | sort | |||
|---|---|---|---|---|---|---|
| × | Program Source Code | CPU secs | Elapsed secs | Memory KB | Code B | ~ CPU Load |
| 1.0 | ATS #3 | 22.07 | 22.07 | 30,588 | 2780 | 11% 1% 0% 100% |
| 1.1 | C GNU gcc #6 | 24.35 | 24.35 | 30,048 | 879 | 0% 0% 0% 100% |
| 1.1 | C++ GNU g++ #5 | 24.55 | 24.55 | 30,564 | 858 | 0% 0% 0% 100% |
| 1.2 | ATS #2 | 27.30 | 27.30 | 464 | 1531 | 0% 0% 0% 100% |
| 1.7 | Ada 2005 GNAT #3 | 36.60 | 36.61 | 33,324 | 1805 | 0% 0% 0% 100% |
| 1.7 | Lisaac | 36.94 | 36.94 | 576 | 653 | 0% 0% 0% 100% |
| 1.8 | Java 6 steady state #3 | 39.10 | 39.10 | 203,960 | 970 | 0% 0% 0% 100% |
| 1.9 | Java 6 -server #3 | 41.56 | 41.57 | 48,900 | 903 | 0% 0% 0% 100% |
| 1.9 | Java 6 -server | 42.51 | 42.55 | 12,020 | 665 | 0% 0% 0% 100% |
| 2.2 | ATS | 47.80 | 47.80 | 464 | 601 | 0% 0% 0% 100% |
| 2.2 | Lua LuaJIT | 48.71 | 48.71 | 1,064 | 353 | 0% 0% 0% 100% |
| 2.2 | Scala | 49.23 | 49.27 | 44,180 | 737 | 0% 0% 0% 100% |
| 2.3 | C GNU gcc #2 | 50.15 | 50.15 | 488 | 400 | 0% 0% 0% 100% |
| 2.4 | Scala #2 | 54.00 | 54.01 | 12,584 | 454 | 0% 0% 0% 100% |
| 2.5 | Lua LuaJIT #2 | 55.52 | 55.51 | 852 | 367 | 0% 0% 0% 100% |
| 2.6 | Fortran Intel | 56.80 | 56.79 | 32,388 | 485 | 0% 0% 0% 100% |
| 2.6 | Clean #2 | 57.17 | 57.17 | 508 | 506 | 0% 0% 0% 100% |
| 2.7 | Ada 2005 GNAT #2 | 59.85 | 59.85 | 1,132 | 572 | 0% 0% 0% 100% |
| 2.7 | Ada 2005 GNAT | 60.34 | 60.34 | 1,140 | 611 | 0% 0% 0% 100% |
| 2.9 | Lua LuaJIT #6 | 64.16 | 64.16 | 18,632 | 607 | 0% 0% 0% 100% |
| 3.0 | C# Mono | 66.08 | 66.08 | 38,472 | 798 | 0% 0% 0% 100% |
| 3.2 | Haskell GHC #2 | 70.30 | 70.30 | 35,440 | 772 | 1% 1% 1% 100% |
| 3.4 | Lisp SBCL | 74.91 | 74.91 | 36,768 | 1002 | 0% 0% 0% 100% |
| 3.5 | Pascal Free Pascal #3 | 78.35 | 78.34 | 48 | 530 | 0% 0% 0% 100% |
| 3.7 | C# Mono #2 | 82.20 | 82.19 | 4,956 | 484 | 0% 0% 0% 100% |
| 5.2 | OCaml #3 | 113.76 | 113.75 | 844 | 441 | 0% 0% 0% 100% |
| 5.6 | Go 6g 8g #3 | 124.20 | 124.21 | 118,864 | 695 | 0% 0% 0% 100% |
| 5.8 | Haskell GHC | 127.72 | 127.71 | 1,528 | 627 | 0% 0% 0% 100% |
| 7.1 | F# Mono | 156.12 | 156.23 | 7,096 | 528 | 0% 0% 0% 100% |
| 11 | C++ GNU g++ #3 | 238.66 | 238.64 | 1,108 | 414 | 0% 1% 0% 100% |
| 12 | Go 6g 8g #6 | 257.25 | 257.24 | 31,576 | 723 | 0% 0% 0% 100% |
| 12 | Go 6g 8g | 262.70 | 262.68 | 632 | 509 | 0% 0% 0% 100% |
| 15 | Go 6g 8g #5 | 5 min | 5 min | 32,320 | 714 | 0% 0% 0% 100% |
| 18 | Erlang HiPE | 6 min | 6 min | 634,660 | 534 | 0% 100% 0% 0% |
| 21 | OCaml #2 | 7 min | 7 min | 85,112 | 929 | 0% 0% 0% 100% |
| 23 | Lua | 8 min | 8 min | 1,072 | 353 | 0% 0% 0% 100% |
| 26 | Lua #2 | 9 min | 9 min | 912 | 367 | 0% 0% 0% 100% |
| 28 | Java 6 -Xint | 10 min | 10 min | 10,320 | 665 | 0% 0% 0% 100% |
| 31 | Lua #6 | 11 min | 11 min | 19,004 | 607 | 0% 0% 0% 100% |
| 38 | Scheme PLT #2 | 14 min | 14 min | 8,572 | 508 | 0% 0% 0% 100% |
| 40 | Java 6 -Xint #3 | 14 min | 14 min | 47,092 | 903 | 0% 0% 0% 100% |
| 48 | Smalltalk VisualWorks #2 | 17 min | 17 min | 12,736 | 467 | 0% 0% 0% 100% |
| 99 | Mozart/Oz | 36 min | 36 min | 6,804 | 559 | 0% 0% 0% 100% |
| 114 | Python 3 #2 | 41 min | 41 min | 5,500 | 777 | 0% 0% 0% 100% |
| 135 | PHP #3 | 49 min | 49 min | 84,572 | 863 | 0% 0% 0% 100% |
| 138 | PHP | 50 min | 50 min | 3,624 | 443 | 0% 0% 0% 100% |
| 141 | Python CPython #5 | 51 min | 51 min | 18,844 | 425 | 0% 0% 0% 100% |
| 141 | Python CPython | 51 min | 51 min | 2,828 | 287 | 0% 0% 0% 100% |
| 154 | Ruby JRuby | 56 min | 56 min | 85,752 | 313 | 0% 0% 0% 100% |
| 158 | PHP #2 | 58 min | 58 min | 3,312 | 395 | 0% 0% 0% 100% |
| 239 | Perl #2 | 1h 27 min | 1h 27 min | 3,032 | 311 | 0% 0% 0% 100% |
| 250 | Perl | 1h 32 min | 1h 32 min | 320,324 | 550 | 0% 0% 0% 100% |
| 392 | Ruby 1.9 | 2h 24 min | 2h 24 min | 2,768 | 313 | 0% 0% 0% 100% |
| 522 | Ruby MRI | 3h 11 min | 3h 11 min | 1,564 | 313 | 0% 0% 0% 100% |
| Fortran Intel #2 | Bad Output | 813 | ||||
| Fortran Intel #3 | Bad Output | 754 | ||||
| JavaScript TraceMonkey | Failed | 387 | ||||
| JavaScript V8 | Failed | 387 | ||||
| Lisp SBCL #2 | Failed | 653 | ||||
| Python 3 #3 | Failed | 304 |
cmp program output N = 200 with this 5KB output file to check your program is correct before contributing.
Each program should plot the Mandelbrot set [-1.5-i,0.5+i] on an N-by-N bitmap. Write output byte-by-byte in portable bitmap format.
For more information see Eric W. Weisstein, "Mandelbrot Set." From MathWorld--A Wolfram Web Resource.
http://mathworld.wolfram.com/MandelbrotSet.html
Thanks to Greg Buchholz for this benchmark.