Christopher Smith wrote:
Juergen Kreileder wrote:

Christopher Smith <[EMAIL PROTECTED]> writes:



On Tue, 2003-06-03 at 19:29, John Neffenger wrote:


Hi Bill,



Also, 2.5.x Linux has changes to their 1:1 model that greatly
increases scalability for dealing with a large number of threads.


I was under the impression that Java application developers will
have to wait for the Java virtual machines to take advantage of
those threading changes before we see any benefits. I read that
IBM needs to make changes in their Java VM on Linux to support it,
for example. Is that correct?


That is my understanding right now. The latest JVM's from Sun and
IBM apparently take steps to disable NPTL.



Huh? RH 9 already uses NPTL, Sun and Blackdown JVMs work on it. (I don't know about IBM's.)


To clarify: yes, RH9 has NPTL. However, NPTL changes the behavior of threading on Linux (actually makes it more POSIX compliant). These subtle changes in behavior tend to cause problems with complex software that is tightly tied to the underlying thread model. Certainly the existing Linux JVM's have had a LOT of tweaking done to them in order to deal with "differences" in Linux's thread model. This is also a problem for the WINE project (as another example). So, the simple thing to do is disable NPTL and use the old, less scalable thread model (basically you just set an environment variable and magically glibc uses LinuxThreads-style pthreads). It's my understanding that the Sun JVM does this, as does the WINE project. I am not certain about the IBM VM, but since they have not released a new VM since NPTL was released on a mainstream Linux platform (RH9), I suspect this is not the case. Someone who knows more, please let me know.

I suspect that prior to NPTL being usable, changes will have to be made both the VM and the standard libraries. Perhaps with luck Sun/IBM/etc. can just use code from other POSIX platforms. I don't know.


That's not clarification. It's spreading wrong information.


OK, I'm not a wine expert nor am I allowed to read IBM code. But I can
speak for Sun JVM. No, there is no magic flag or whatever within JVM
to disable NPTL. If you are running java on RH9 (or 2.5.xx kernel) with
NPTL, you are indeed using the new pthread library.

Still not convinced? Try creating more than 1024 threads, that's
something you couldn't do without NPTL.

There has been a lot of work done in the past to make this happen.
Drop me an email if you'd like to hear more about the boring story of
threading support within JVM ;-)

thanks,
-hui


---------------------------------------------------------------------- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Reply via email to