Newsletter sign-up
View all newsletters

Sign up for our technology specific newsletters.

Enterprise Java
Email Address:

Can HotSpot jumpstart your Java applications?

What Sun's new Java performance engine can and can't do

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone

Page 2 of 4

The speedometers

By some industry measurements, the new features described above seem to work quite well. Preliminary (as yet unapproved by the Standard Performance Evaluation Corp.) results indicate HotSpot has indeed earned Sun bragging rights: it's the top-performing JVM according to the SPECjvm98 benchmark, and its VolanoMark benchmark figures are even higher. (For a detailed explanation of the VolanoMark benchmark, see the March 1999 JavaWorld exclusive coverage of the VolanoMark benchmark report, linked in the Resources section below.)

Sun reported a SPECjvm98 result of 31.1 for HotSpot on Windows NT at 450 MHz -- an impressive 90 percent improvement over the Java 2 SDK running with the Symantec 3.00 JIT compiler on the classic JVM and a 112 percent improvement over JDK 1.1.7 with the same JIT. (See Figure 1 below for a comparison with other JVMs on a Pentium II/350 MHz machine.)

On the JVM front, HotSpot's SPECjvm98 result of 25.3 on a Pentium II also places Sun slightly ahead of IBM, which previously held the lead with a result of 22.6.

Figure 1. SPECjvm98 results for Java HotSpot on Windows NT at 350 MHz

Although HotSpot's preliminary performance on the VolanoMark tests (which measure JVM speeds as a function of the number of concurrent connections) showed JVM speeds still lagging behind some results posted by Big Blue, HotSpot proved to be highly scalable, a drastic improvement over previous HotSpot results for the Windows platform.

Figure 2. VolanoMark results on Windows NT

On SPARC/Solaris, HotSpot showed a stunning capacity for maintaining an almost even throughput value for concurrent connection levels ranging from 200 to 2000. That is, as Figure 3 indicates, HotSpot's ability to handle messages didn't degrade substantially as a function of the number of concurrent chat sessions.

Figure 3. VolanoMark results on Solaris (SPARC Platform Edition)

Sun is calling its VolanoMark results "best-of-industry" despite some individual results that are slower than those for other JVMs. Still, Sun's JVM performance numbers on recent, published VolanoMark tests are a milestone, says Volano LLC founder John Neffenger, considering that until recently, Sun's JDK 1.2 had failed to outperform Microsoft's SDK 3.2 on Windows.

Servers and clients

Number grubbing aside, everyone admits the issue boils down to one question: What will HotSpot do for your application? For some apps, HotSpot can double performance; for others it won't do much at all.

"HotSpot sped our [Java database] StreamStore up by from 80 to 100 percent," said Bluestream Software CTO Jim Tivy. "StreamStore requires a lot of repetitive operations; the process of inserting a thousand records or reading 10,000 [records] takes place time and time again, and the act of reading 10,000 records is the same as [the act of] reading 1. [HotSpot] takes a hit in the first few operations while it's still profiling the app, but begins to warm up after that."

Sun agrees that databases are ideal candidates for the HotSpot performance engine, saying in its HotSpot literature that server-side applications that operate for long periods of time allow "the performance engine's adaptive compiler ample opportunity to analyze the program during runtime and make the smartest optimizations." Additionally, said Tivy, distributing garbage collection over smaller intervals gives the user the impression of more consistent database availability.

  • Digg
  • Reddit
  • SlashDot
  • Stumble
  • del.icio.us
  • Technorati
  • dzone
Comment
Login
Forgot your account info?
Add comment
Anonymous comments subject to approval. Register here for member benefits.
Have a JavaWorld account? Log in here. Register now for a free account.
Resources