/mobile Handheld Friendly website
x64 Ubuntu : Intel® Q6600® quad-core |
Each table row shows performance measurements for this Ruby 2.0 program with a particular command-line input value N.
| N | CPU secs | Elapsed secs | Memory KB | Code B | ≈ CPU Load |
|---|---|---|---|---|---|
| 1,000 | 7.30 | 7.32 | 6,140 | 307 | 1% 0% 0% 100% |
| 4,000 | 115.83 | 115.87 | 6,136 | 307 | 97% 0% 3% 0% |
| 16,000 | 1,847.44 | 1,847.97 | 6,144 | 307 | 100% 0% 0% 0% |
Read the ↓ make, command line, and program output logs to see how this program was run.
Read mandelbrot benchmark to see what this program should do.
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-linux]
# The Computer Language Benchmarks Game # http://benchmarksgame.alioth.debian.org # # contributed by Karl von Laudermann # modified by Jeremy Echols # modified by Detlef Reichl # modified by Joseph LaFata # modified by Peter Zotov size = ARGV.shift.to_i puts "P4\n#{size} #{size}" byte_acc = 0 bit_num = 0 y = 0 while y < size ci = (2.0*y/size)-1.0 x = 0 while x < size zrzr = zr = 0.0 zizi = zi = 0.0 cr = (2.0*x/size)-1.5 escape = 0b1 z = 0 while z < 50 tr = zrzr - zizi + cr ti = 2.0*zr*zi + ci zr = tr zi = ti # preserve recalculation zrzr = zr*zr zizi = zi*zi if zrzr+zizi > 4.0 escape = 0b0 break end z += 1 end byte_acc = (byte_acc << 1) | escape bit_num += 1 # Code is very similar for these cases, but using separate blocks # ensures we skip the shifting when it's unnecessary, which is most cases. if (bit_num == 8) print byte_acc.chr byte_acc = 0 bit_num = 0 elsif (x == size - 1) byte_acc <<= (8 - bit_num) print byte_acc.chr byte_acc = 0 bit_num = 0 end x += 1 end y += 1 end
Mon, 25 Feb 2013 06:02:09 GMT COMMAND LINE: /usr/local/src/ruby-2.0.0-p0/ruby mandelbrot.yarv-3.yarv 16000 (BINARY) PROGRAM OUTPUT NOT SHOWN