SuSE's BEA partnership boosts Java on Linux

Discussions

News: SuSE's BEA partnership boosts Java on Linux

  1. SuSE's BEA partnership boosts Java on Linux (10 messages)

    Linux vendor SuSE, and BEA have partnered, aiming to improve the performance of SuSE's operating systems when running Java applications. Some people have complained about the mismatch with threading between the Linux OS, and the JVM.

    This has been remedied in part in the 2.6 kernel, however this partnership should allow performance tweaks between JRockit and the OS.

    Read: SuSE's BEA partnership boosts Java on Linux

    Threaded Messages (10)

  2. more technical info?[ Go to top ]

    It seems that this feature of the 2.6 kernel is the answer to the problem that's analysed in this IBM Developerworks article. Does anybody have more detailed technical information what the 2.6 kernel means in this respect from a Java point of view?
    Very interesting stuff.

    groetjes,
    Joost
  3. more technical info?[ Go to top ]

    Joost, previous to kernel 2.6, Linux threads were actually processes. Starting in 2.6, the kernel supports "true" threads. Since this is based on the POSIX APIs (as far as I understand) they call it "POSIX compliant threading." There's also a term used called "light weight processes" which refers to the old Linux threading support, IIRC ....

    Among other things, this shows up in Linux utilities such as "ps -ef" and "top", among others. For example, a Java process using 128MB with 10 threads would show up as 10 pids, each with 128MB ... very confusing.

    The performance advantages have to do with the ability to more rapidly start threads (they are "lighter weight" than processes) and faster/easier memory management (threads are all part of the same process space, so things like protected mode memory access are supposedly much simpler to implement.)

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Clustered JCache for Grid Computing!
  4. more technical info?[ Go to top ]

    Note that RedHat Linux has had NPTL support since RedHat 9 (which means Fedora Core 1, and the new RedHat Enterprise Server version also support it). From what I know RedHat backported the NPTL code form the 2.5/2.6 kernel to their 2.4 variant used in the above releases.

    W/regards to the standard Sun JVM, you need at least 1.4.1 to take advantage of this.

    Regards,
    Colin
  5. more technical info?[ Go to top ]

    From what I know RedHat backported the NPTL code form the 2.5/2.6 kernel to their 2.4 variant used in the above releases.

    Since RedHat 9 I'm actually not afraid anymore of advising customers to run applications on Linux (without ordering extra hardware). Just because of the NPTL stuff (which is said to increase performance by more than 50% when running multi-threaded applications).

    Is there info on when 2.5/6 kernels are going to be available for major distro's (are haven't I been keeping up with the news enough lately)?
  6. re: more technical info?[ Go to top ]

    Is there info on when 2.5/6 kernels are going to be available for major distro's (are haven't I been keeping up with the news enough lately)?


    http://fedora.redhat.com/participate/schedule
  7. more technical info?[ Go to top ]

    Is there info on when 2.5/6 kernels are going to be available for major distro's (are haven't I been keeping up with the news enough lately)?


    http://www.mandrakelinux.com/en/cookersnapshot.php3

    Mandrake Linux Cooker Snapshot 20031231.

    Release notes

    - content: 2 ISO images with Linux 2.6.0, kde 3.1.94 or XFree86 4.3.99
    - among all features, you will find:

      # New cdrecord which can burn DVD+RW
      # New LVM code (no support in install yet though)
      # Mozilla 1.5
      # Xchat 2.0.6
      # Gaim 0.74
      # kolab-server 1.0
      # Samba 3.0.1

    Mandrake Linux Cooker Snapshot 20031217 - 2.6 test.
  8. more technical info?[ Go to top ]

    Native POSIX Thread Library (NTPL)

    http://www.redhat.com/partners/pdf/POSIX_Linux_Threading.pdf

    http://people.redhat.com/drepper/nptl-design.pdf
  9. Yeah, threads visible as if they are separate processes. I always thought it undesirable that you were able to kill of some individual thread using 'kill' and the JVM would just go on as if nothing happened. If the 'soundness' of the whole JVM is endangered, which could be well the case if the killed thread is some reaper thread for instance, I think the whole JVM should crash.

    I seem to recall that IBM provided some patches to the kernel to accomodate 'heavy threading' which were rejected by Linus Torvalds on the ground that they improved performance of servers at the expense of desktop machines. Let's find out how they handled this trade-off.

    Tx for the info guys. I've got some reading to do. :-)
  10. We ran some test with Weblogic 8.1 in Redhat 3.0 AE. There was some issue's getting JRockit running with posix thread at first but Weblogic 8.1 just screams in Linux. My kudos to the weblogic team. We have been running Weblogic 8.1 in Redhat 2.1 AE in production for a while.
  11. Tech Info[ Go to top ]

    I blogged about the NPTL stuff a couple of weeks ago: see http://www.mackmo.com/nick/blog/java/?permalink=Java-Linux.txt

    A couple of useful links

    What's new in Linux 2.6: http://www.kniggit.net/wwol26.html
    Performance Benchmarks of Java on NPTL vs without: http://java.sun.com/developer/technicalArticles/JavaTechandLinux/RedHat/