x64 Ubuntu : Intel® Q6600® quad-core |
This chart shows 3 comparisons - Time-used, Memory-used and Code-used.
Each chart bar shows, for one unidentified benchmark, how much the fastest Java 6 steady state program used compared to the fastest Java 6 -server program.
This table shows 3 comparisons - Time-used, Memory-used and Code-used.
Each table row shows, for one named benchmark, how much the fastest Java 6 steady state program used compared to the fastest Java 6 -server program.
| Java 6 steady state used what fraction? used how many times more? | ||||
|---|---|---|---|---|
| Benchmark | Time | Memory | Code | Reduced N |
| chameneos-redux | ± | 1/2 | ± | |
| binary-trees | ± | 2× | ± | |
| mandelbrot | ± | 6× | ± | |
| pidigits | ± | ± | ± | |
| spectral-norm | ± | 2× | ± | |
| n-body | ± | ± | ± | |
| fannkuch | ± | ± | ± | |
± read the measurements and then read the program source code.
This table shows 5 measurements - CPU Time, Elapsed Time, Memory, Code and ~ CPU Load.
For each named benchmark, measurements of the fastest Java 6 steady state program are shown for comparison against measurements of the fastest Java 6 -server program.
| Program Source Code | CPU secs | Elapsed secs | Memory KB | Code B | ~ CPU Load |
|---|---|---|---|---|---|
| chameneos-redux | |||||
| Java 6 steady state | 21.42 | 7.27 | 19,080 | 1464 | 57% 50% 81% 81% |
| Java 6 -server | 12.57 | 8.64 | 41,288 | 1756 | 37% 45% 15% 40% |
| binary-trees | |||||
| Java 6 steady state | 17.75 | 14.74 | 1,016,984 | 675 | 48% 31% 17% 24% |
| Java 6 -server | 20.53 | 16.18 | 566,032 | 603 | 13% 86% 16% 11% |
| mandelbrot | |||||
| Java 6 steady state | 39.00 | 9.78 | 386,700 | 970 | 100% 100% 100% 100% |
| Java 6 -server | 42.02 | 10.69 | 66,984 | 903 | 98% 98% 98% 99% |
| pidigits | |||||
| Java 6 steady state | 13.49 | 5.40 | 54,236 | 1836 | 50% 57% 67% 50% |
| Java 6 -server | 14.15 | 5.79 | 50,508 | 1816 | 49% 60% 52% 56% |
| spectral-norm | |||||
| Java 6 steady state | 17.14 | 4.31 | 24,620 | 1027 | 99% 99% 99% 99% |
| Java 6 -server | 17.33 | 4.51 | 15,208 | 950 | 98% 95% 94% 97% |
| n-body | |||||
| Java 6 steady state | 23.11 | 23.11 | 14,952 | 1498 | 81% 0% 0% 19% |
| Java 6 -server | 23.13 | 23.13 | 15,100 | 1424 | 0% 0% 0% 100% |
| fannkuch | |||||
| Java 6 steady state | 74.50 | 20.56 | 18,704 | 1232 | 79% 78% 99% 100% |
| Java 6 -server | 68.47 | 19.09 | 17,584 | 1150 | 81% 97% 74% 99% |
| fasta | |||||
| k-nucleotide | |||||
| regex-dna | |||||
| reverse-complement | |||||
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) 64-Bit Server VM (build 11.3-b02, mixed mode)
The reported "Java 6 steady state" program CPU secs and program Elapsed secs are averages that approximate steady state performance - see Help: What about Java?
Each program performs the same calculation 66 times, for example -
public static void main(String[] args){ for (int i=0; i<65; ++i) binarytrees.program_main(args,false); binarytrees.program_main(args,true); }
The "Java 6 steady state" program CPU secs and program Elapsed secs measurements are made in the same way as all the other time measurements, but before display they are divided by 66 to give approximate averages that minimize the influence of mixed-mode method interpretation and on-stack-replacement, for example -
$ java -server -XX:+PrintCompilation -XX:-PrintGC binarytrees_test 20 10 1 java.lang.Object::(1 bytes) 2 binarytrees_test$TreeNode::bottomUpTree (42 bytes) 3 binarytrees_test$TreeNode:: (10 bytes) 4 binarytrees_test$TreeNode:: (20 bytes) 5 binarytrees_test$TreeNode::itemCheck (33 bytes) stretch tree of depth 21 check: -1 6 binarytrees_test$TreeNode::access$000 (6 bytes) 7 binarytrees_test$TreeNode::access$100 (5 bytes) 1% binarytrees_test::program_main @ 108 (240 bytes) 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 21.318 8 binarytrees_test::program_main (240 bytes) stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 15.977 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 16.393 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 16.030 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 15.889 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 15.512 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 15.567 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 15.107 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 16.046 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 15.169