4 Replies Latest reply on May 5, 2003 10:47 PM by Jon Barnett

    Wow, can this be true?

    Dennis Cartier Newbie

      Hi All,

      I recently upgraded one of my Linux nodes running JBoss 3.0.7 to IBM JDK 1.4.0 and the results are pretty astounding. So good in fact that it is making me question if I am seeing the true picture or if perhaps I have somehow crippled the Sun version by misconfiguring it.

      Before I was using Sun 1.4.1_01 and using JAMon I was averaging 15 ~ 20 ms per page (averaged over a few thousand pages). With the IBM JVM I am seeing 1 ~ 2 ms per page for a similar load. That is close to a 1000% speed up?

      That same for the database accessing portions. I have a dual CPU DB server running MSSQL 2000 that always seems to be 'relaxing' when it should be under stress during the peak periods of the day. I figured it was just crappy JDBC drivers that M$ provides. With the IBM JVM the max access time went from ~250ms to ~20ms. Amazing.

      So this begs the question, has anyone else seen this when using the IBM JVM on Linux?

      Also I wonder what these jokers used when they did their tests?

      http://www.jboss.org/modules/bb/index.html?module=bb&op=viewtopic&t= did not see it specified in the article and I doubt it was the IBM JVM as the version JBoss they used does not run on the IBM JVM without a slight change and I am sure they would have mentioned it.

      If you run Linux and JBoss, you should try the IBM JVM.

      A word of warning, you have to fix a couple of places we JBoss uses JCE algorithms that IBM does not provide.

      http://sourceforge.net/tracker/index.php?func=detail&aid=730969&group_id=22866&atid=376685

      I also had to run Xvfb as the IBM JVM does not support java.awt.headless=true yet.

      I also noticed that NumberFormat.getCurrencyInstance() seems to put a '#' in place of where the Sun version would have put a '$'. Not sure what is up with that, maybe I took too many short cuts in my code. Have to see.

      Dennis

        • 1. Re: Wow, can this be true?
          Jeroen Jansen Newbie

          Hi, switching to an IBM JVM not only yields better performance on Linux, in my experience also on my development (win XP) box in comparison with the old Sun 1.3 JVM. When our app is going live we'll definately use Linux combined with IBM's JVM, the speed increase is the bomb.
          Anyways, thanks for your hints

          Jeroen

          • 2. Re: Wow, can this be true?
            Franco Apprentice

            Jeroen,
            from where you download the ibm jdk 1.4 for windows ?

            Thanks.

            • 3. Re: Wow, can this be true?
              Jon Barnett Master

              The results seem impressive. I haven't personally seen a huge jump in performance but a lot of the I/O improvements in Sun JDK 1.4.1 were a result of IBM's 1.3 tweaking. The bottleneck for my system is probably my DB server so it is hard to judge.

              You can get the IBM SDK (as they call it) from the Developer World part of their website. Actually it is quicker to search Google and then let Google guide you to the right area. You will need a Developer World login to download the SDK - about 70Mb worth.

              You will also have a few things to do. Tomcat SSL won't work with it standard because it doesn't allow for the IBM JSSE provider - I couldn't find a patch for it. So you will need to go with Jetty and compile in the contrib from a Jetty 4.2.9 distribution to work with JBoss 3.2.0. For this, you need to drop the security.jar from the IBM SDK into the Jetty source ext directory. You will also need to do some performance tweaking with the standard Jetty distribution. I got lazy and just dropped the compiled IbmJsseProvider class into the org.mortbay.jetty.jar that came with JBoss 3.2.0.

              Some other things to note. The IBM SDK environment seems to take up about 30 Mb ~ 40 Mb more memory than the Sun JDK 1.4.1_01 running in Linux. It can take the RSS footprint for JBoss-Jetty to about 140 Mb to 150 Mb as opposed to about 110 Mb with a Sun JDK.

              If you are running Tomcat, you'll find the footprint a little bigger as Jetty is comparatively small.

              Hope that helps if you are considering the IBM SDK.

              • 4. Re: Wow, can this be true?
                Jon Barnett Master

                Here are some independent performance benchmarks to give a flavour - just don't be too literal with your interpretation as they measure particular characteristics.

                Number crunching performance
                http://www.coyotegulch.com/reviews/almabench.html

                Server performance
                http://www.volano.com/report/