OUT-OF-DATE! Read http://shootout.alioth.debian.org/ |
Each chart bar shows how many times more Time or how many times more Memory one unidentified ↓ startup program used, compared to the benchmark 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 startup programs used - sort Memory KB. Compare how much Code the benchmark programs used - sort Code B
Column × shows how many times more each program used compared to the benchmark program that used least.
| sort | sort | sort | sort | |||
|---|---|---|---|---|---|---|
| × | Program Source Code | CPU secs | Elapsed secs | Memory KB | Code B | ≈ CPU Load |
| 1.0 | C GNU gcc #3 | 0.0012 | 133 | |||
| 1.1 | Pascal Free Pascal | 0.0014 | 72 | |||
| 1.4 | C++ Intel | 0.0017 | 108 | |||
| 1.5 | Fortran Intel | 0.0018 | 83 | |||
| 1.8 | C GNU gcc #2 | 0.0022 | 100 | |||
| 1.8 | Lisaac | 0.0023 | 178 | |||
| 2.0 | Eiffel SmartEiffel | 0.0025 | 117 | |||
| 2.0 | Ada 2005 GNAT | 0.0025 | 100 | |||
| 2.2 | C Intel #2 | 0.0028 | 100 | |||
| 2.3 | Fortran G95 | 0.0028 | 83 | |||
| 2.5 | Clean | 0.0031 | 69 | |||
| 2.6 | OCaml | 0.0032 | 53 | |||
| 2.7 | SML MLton | 0.0033 | 55 | |||
| 2.8 | D Digital Mars | 0.0035 | 89 | |||
| 3.0 | JavaScript SpiderMonkey | 0.0037 | 47 | |||
| 3.2 | BASIC FreeBASIC | 0.0040 | 45 | |||
| 3.2 | Haskell GHC | 0.0040 | 55 | |||
| 3.5 | C++ GNU g++ | 0.0043 | 108 | |||
| 3.6 | Lua | 0.0045 | 51 | |||
| 5.2 | Forth bigForth | 0.0065 | 110 | |||
| 5.4 | Perl | 0.0067 | 48 | |||
| 6.9 | Scheme Chicken | 0.0085 | 51 | |||
| 7.1 | Lua LuaJIT | 0.0088 | 51 | |||
| 8.6 | Ruby MRI | 0.0107 | 44 | |||
| 9.1 | Mercury | 0.0113 | 142 | |||
| 10 | Forth GNU GForth | 0.0124 | 110 | |||
| 10 | Oberon-2 OO2C | 0.0130 | 90 | |||
| 11 | Tcl | 0.0136 | 44 | |||
| 14 | Icon | 0.0169 | 71 | |||
| 14 | Ruby 1.9 | 0.0172 | 44 | |||
| 16 | Prolog SWI | 0.0197 | 89 | |||
| 19 | Smalltalk GNU | 0.0241 | 64 | |||
| 24 | C CINT | 0.0293 | 99 | |||
| 27 | Python CPython | 0.0329 | 45 | |||
| 29 | Rebol | 0.0359 | 146 | |||
| 36 | SML SML/NJ | 0.0452 | 179 | |||
| 40 | Python Psyco | 0.0499 | 66 | |||
| 48 | Mozart/Oz | 0.0591 | 108 | |||
| 55 | PHP | 0.0684 | 68 | |||
| 62 | Java 6 -Xint | 0.0771 | 112 | |||
| 68 | Java 6 -client | 0.0846 | 112 | |||
| 69 | Java 6 -server | 0.0854 | 112 | |||
| 69 | Java 6 -Xms64m | 0.0862 | 112 | |||
| 81 | C# Mono | 0.1000 | 123 | |||
| 83 | Scheme Ikarus | 0.1031 | 67 | |||
| 84 | Zonnon Mono | 0.1038 | 73 | |||
| 92 | Scheme PLT #2 | 0.1139 | 69 | |||
| 98 | Java GNU gcj | 0.1209 | 112 | |||
| 100 | Pike | 0.1237 | 79 | |||
| 142 | Smalltalk VisualWorks | 0.1766 | 115 | |||
| 144 | 0.1787 | 112 | ||||
| 149 | Erlang HiPE | 0.1846 | 103 | |||
| 173 | F# Mono | 0.2149 | 48 | |||
| 185 | Lisp SBCL | 0.2292 | 68 | |||
| 220 | Nice | 0.2730 | 75 | |||
| 224 | Io | 0.2783 | 47 | |||
| 230 | CAL | 0.2852 | 160 | |||
| 279 | Prolog YAP | 0.3465 | 54 | |||
| 483 | Scala | 0.5984 | 89 | |||
| 485 | JavaScript Rhino | 0.6016 | 47 | |||
| 822 | Smalltalk Squeak | 1.0189 | 118 | |||
| 1,437 | Ruby JRuby | 1.7820 | 44 | |||
| 1,598 | Python IronPython | 1.9810 | 45 | |||
| 3,578 | Groovy | 4.4366 | 47 | |||
| C Intel #3 | Failed | 133 | ||||
| Scheme PLT | Failed | 76 |
diff program output N = 1 with this output file to check your program is correct before contributing.
Each program should print "hello world" and exit.
This benchmark measures startup costs. It is run differently than the others - each program is run N times in a loop by a shell script wrapper. We show the mean CPU time. Most hello world programs are too fast for the way we measure memory usage so we only show CPU time.