/mobile Handheld Friendly website
Ubuntu : Intel® Q6600® one core |
Each table row shows performance measurements for this Java 7 program with a particular command-line input value N.
| N | CPU secs | Elapsed secs | Memory KB | Code B | ≈ CPU Load |
|---|---|---|---|---|---|
| 1,000 | 0.32 | 0.32 | 192 | 665 | 0% 0% 0% 100% |
| 4,000 | 2.85 | 2.85 | 14,116 | 665 | 1% 0% 0% 100% |
| 16,000 | 42.83 | 42.84 | 14,392 | 665 | 1% 0% 0% 100% |
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.
java version "1.7.0_11"
Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
Java HotSpot(TM) Server VM (build 23.6-b04, mixed mode)
/* The Computer Language Benchmarks Game http://benchmarksgame.alioth.debian.org/ contributed by Stefan Krause slightly modified by Chad Whipkey */ import java.io.IOException; import java.io.PrintStream; class mandelbrot { public static void main(String[] args) throws Exception { new Mandelbrot(Integer.parseInt(args[0])).compute(); } public static class Mandelbrot { private static final int BUFFER_SIZE = 8192; public Mandelbrot(int size) { this.size = size; fac = 2.0 / size; out = System.out; shift = size % 8 == 0 ? 0 : (8- size % 8); } final int size; final PrintStream out; final byte [] buf = new byte[BUFFER_SIZE]; int bufLen = 0; final double fac; final int shift; public void compute() throws IOException { out.format("P4\n%d %d\n",size,size); for (int y = 0; y<size; y++) computeRow(y); out.write( buf, 0, bufLen); out.close(); } private void computeRow(int y) throws IOException { int bits = 0; final double Ci = (y*fac - 1.0); final byte[] bufLocal = buf; for (int x = 0; x<size;x++) { double Zr = 0.0; double Zi = 0.0; double Cr = (x*fac - 1.5); int i = 50; double ZrN = 0; double ZiN = 0; do { Zi = 2.0 * Zr * Zi + Ci; Zr = ZrN - ZiN + Cr; ZiN = Zi * Zi; ZrN = Zr * Zr; } while (!(ZiN + ZrN > 4.0) && --i > 0); bits = bits << 1; if (i == 0) bits++; if (x%8 == 7) { bufLocal[bufLen++] = (byte) bits; if ( bufLen == BUFFER_SIZE) { out.write(bufLocal, 0, BUFFER_SIZE); bufLen = 0; } bits = 0; } } if (shift!=0) { bits = bits << shift; bufLocal[bufLen++] = (byte) bits; if ( bufLen == BUFFER_SIZE) { out.write(bufLocal, 0, BUFFER_SIZE); bufLen = 0; } } } } }
Mon, 21 Jan 2013 07:33:17 GMT MAKE: mv mandelbrot.java mandelbrot.java mv: `mandelbrot.java' and `mandelbrot.java' are the same file make: [mandelbrot.java_run] Error 1 (ignored) /usr/local/src/jdk1.7.0_11/bin/javac mandelbrot.java 0.53s to complete and log all make actions COMMAND LINE: /usr/local/src/jdk1.7.0_11/bin/java -server -XX:+TieredCompilation -XX:+AggressiveOpts mandelbrot 16000 (BINARY) PROGRAM OUTPUT NOT SHOWN