÷

 Are the Java 6 -server programs faster?

Do the Java 6 -server programs use optimized assembly code libraries? Are they small simple programs or very optimized programs? Do the Java 6 -server programs use a fraction of the time used by other programs or do they use several times more?


 Java 6 -server used what fraction? used how many times more? 
Programs Time Memory Code Reduced N
↓ spectral-norm1/170
↓ recursive1/133±±
↓ mandelbrot1/124
↓ n-body1/115±
↓ fannkuch1/77
↓ fasta1/44±
↓ binary-trees1/351/2±
↓ nsieve-bits1/20
↓ nsieve1/111/6±
↓ sum-file1/4
↓ k-nucleotide1/2
↓ partial-sums1/2±
↓ pidigits1/2
↓ reverse-complement1/2
↓ regex-dna1/2

± look at the measurements and then look at the programs.

 Are the Java 6 -server programs faster?

Program & Logs CPU secs Elapsed secs Memory KB Code B ~ CPU Load
 spectral-norm 
Java 6 -server24.0110,008514  
Perl4,089.082,468334  
 recursive 
Java 6 -server6.7612,044427  
Perl898.7810,836380  
 mandelbrot 
Java 6 -server3.2411,092623  
Perl403.201,724311  
 n-body 
Java 6 -server14.7511,5241424  
Perl1,697.591,9361140  
 fannkuch 
Java 6 -server11.058,884555  
Perl855.721,492348  
 fasta 
Java 6 -server21.469,1841240  
Perl950.041,872934  
 binary-trees 
Java 6 -server6.8926,808603  
Perl239.3647,936541  
 nsieve-bits 
Java 6 -server5.0413,364523  
Perl100.184,004253  
 nsieve 
Java 6 -server2.2520,592296  
Perl25.45121,904290  
 sum-file 
Java 6 -server4.109,972226  
Perl18.171,46884  
 k-nucleotide 
Java 6 -server15.8970,9641052  
Perl32.0742,816359  
 partial-sums 
Java 6 -server9.158,488474  
Perl17.411,476389  
 pidigits 
Java 6 -server1.928,992938  
Perl3.612,532385  
 reverse-complement 
Java 6 -server1.3058,932592  
Perl1.9938,360298  
 regex-dna 
Java 6 -server7.8175,892921  
Perl11.8121,408431  
 chameneos-redux 
Java 6 -server17.5112,0921429  
No Perl

 Java 6 -server : ubiquitous jit server virtual machine 

java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) Server VM (build 10.0-b23, mixed mode, sharing)

Home Page: http://java.sun.com/j2se/

Download: http://java.sun.com/j2se/downloads/

"Remember how HotSpot works. It starts by running your program with an interpreter. When it discovers that some method is "hot" -- that is, executed a lot, either because it is called a lot or because it contains loops that loop a lot -- it sends that method off to be compiled. After that one of two things will happen, either the next time the method is called the compiled version will be invoked (instead of the interpreted version) or the currently long running loop will be replaced, while still running, with the compiled method. The latter is known as "on stack replacement" and exists in the 1.3/1.4 HotSpot based systems."

Benchmarking the Java HotSpot VM

Revised BSD license