64-bit Linux Java Performance: SPECjbb2005

If you are not familiar with SPECJbb2005, please read our introduction to it here. SPECjbb2005 from SPEC (Standard Performance Evaluation Corporation) evaluates the performance of server side Java by emulating a three-tier client/server system with emphasis on the middle tier.

We tested with two JVMs:

  • SUN Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_02-b05, mixed mode)
  • BEA JRockit(R) (build R27.4.0-90 linux-x86_64, compiled mode)

We used the following optimizations:

  • Sun JVM: -Xms2g -Xmx2g -Xmn1g -Xss128K -XX:+AggressiveOpts -XX:+UseParallelOldGC -XX:+UseParallelGC
  • BEA JVM: -Xms1800m -Xmx1800m -Xns1500m -XXaggressive -XXlazyunlocking -Xgc:genpar -XXtlasize:min=4k,preferred=512k -XXcallprofiling

The BEA JVM uses memory more aggressively, making more use of the assigned memory. A heap size of 2GB would probably result in the JVM gobbling up too much memory, which could result in errors or poor performance on our 8GB system. That is why we lowered the JVM heap size from 2G to 1.8 G. We also applied slightly more aggressive tuning to the BEA JVM, as their customers are more interested in squeezing out the last bit of performance.

We also used four JVMs per system. The reason is that most IT departments emphasize consolidation today, and it is very rare that one JVM gets eight cores. We fully disclosed our testing methods here. However, note that you cannot compare the results below with our previous findings as we use newer JVMs now.

Below you can find the final score reported by SPECjbb2005, which is an average of the last four runs.


SPECjbb
2005 Sun 1.6.02

It took us hours, but we managed to complete one run of SPECjbb with faster 800MHz DDR. It shows with four JVMs that the memory subsystem on the Xeon systems is a clear bottleneck. It is also important to note that SPECjbb is one of the most sensitive benchmarks to memory bandwidth. If SPECjbb improves 6% when we use 800MHz ram instead of 667MHz, this is probably about the maximum boost the new Xeon will get from slightly faster 800MHz memory.

Let us see how the systems fare with the BEA JRockit JVM.


SPECjbb
2005 Bea JRockit 27.4

BEA uses some clever compression techniques to alleviate the pressure on the memory system. However, it is a bit funny to see how the hardware prefetching gets in the way. While it boosted performance by 14% in our zVisuel Kribi 3D, it is now slowing down the SPECjbb benchmark by 14%. When we disable it, the Xeon 5472 takes the lead.

The Xeon 3GHz looks like a sports car with his wheels deeply entrenched in the mud: the raw power keeps spinning on the lack of memory bandwidth. A 3GHz chip is hardly faster than a 2.33GHz chip, and here AMD's quad-core at 2GHz beats Xeon.

Software Rendering: zVisuel (32-bit Windows) MySQL and WinRAR
Comments Locked

43 Comments

View All Comments

  • tshen83 - Tuesday, November 27, 2007 - link

    Seriously, can you buy the 2360SE? Newegg doesn't even stock the 1.7Ghz 2344HEs.

    The same situation exist on the Phenom line of CPUs. I don't see the value of reviewing Phenom 9700, 9900s when AMD cannot deliver them. I am trouble locating Phenom 9500s.
  • alantay - Tuesday, November 27, 2007 - link

    The MySQL scalability problem is not so much in MySQL as in the Linux kernel and Glibc used.

    To have it scale correctly to 8 CPUs you need kernel 2.6.22.x (alternatively you could try with a 2.6.24-RC -should be a bit faster-, but not with 2.6.23.x) and Glibc 2.6 or higher.

    A default Ubuntu 7.10 for example should scale well with MySQL (OpenSUSE 10.3 *might* work, but they have backported the 2.6.23 scheduler which has a scalability problem).

    Thanks for the article!
  • JohanAnandtech - Tuesday, November 27, 2007 - link

    Excellent feedback.

    It is a bit frustrating that once again you need some ultra new kernel and libraries to get good scalability. THat is unrealistic for people who use SLES and who rely on their support contract to get updates.
  • MGSsancho - Wednesday, November 28, 2007 - link

    how about opensolaris? i dont know how much different it is from solaris 10, but it should be able to scale to dozens of cores nicely. I was about to ask about oracle and DB2 benchmarks but you answered that in your article; expensive, and the oems usually publish that info.

    anyways awesome article
  • Roy2001 - Tuesday, November 27, 2007 - link

    I cannot find a SINGLE one, nowhere.
  • drebo - Tuesday, November 27, 2007 - link

    Newegg has the Phenom 9500 in stock. At least, they did yesterday. I've also got a vendor I use that has them in stock.
  • JarredWalton - Tuesday, November 27, 2007 - link

    But Phenom isn't Opteron 23xx. Different socket, different market, and it has L3. (Does Phenom X4 have an L3 cache? Maybe I should go check....)
  • drebo - Wednesday, November 28, 2007 - link

    Yes, Phenom 9500 has an L3. But if you look at his question (in the subject line), he is asking about barcelona as a whole and phenom specifically. The answer is Yes, they are available.
  • Slaimus - Tuesday, November 27, 2007 - link

    They may be gobbled by up Cray for that Budapest supercomputer.
  • Regs - Tuesday, November 27, 2007 - link

    I would not expect any from vendors and wholesalers until early next year.

    Matter of fact I wouldn't want one until then anyhow. I would at least wait until B3 stepping.

Log in

Don't have an account? Sign up now