Process vs Thread: what are the consequences?

L

Lew

Kenneth said:
I hate to followup my own post, but I've been looking at this problem
again and I'm really just unhappy with how it works. Since this can so
easily be solved under Solaris, and Lew (I think?) mentioned that this is
all JVM dependent. I was hoping somebody could point me to a JVM that
runs under Linux that supports the -XX:UseBoundThreads option or something
similar. I want a 1:1 mapping between native threads and Java threads and
I just can't seem to get it.

Does anyone have any idea? (BTW, I checked IBM's JVM).

<http://developers.sun.com/solaris/articles/solaris_linux_app.html#threads>

which has a link to
<http://people.redhat.com/drepper/nptl-design.pdf>

However, it's apparently already out of date, as they claim,
This document is completely, utterly out of date when it comes
to descriptions of the limitations of the current implementation.

Apparently they've improved things since February, 2005.

Since Sun now uses NPTL on RedHat Linux, and NPTL maps user threads to kernel
threads 1:1,

Also on the Sun page:
Both Linux and the Solaris OS support the notion of binding a process or thread to a processor.

RedHat tells us that Sun JVMs since 1.4.2 map Java threads to NPTL threads:
<https://rhstack.108.redhat.com/arti...mance-tuning-on-linux-with-andrew-oliver.html>


And this article tested the performance of Java using NPTL:
<http://www.amitysolutions.com.au/documents/NPTL_Java_threads.pdf>

None of these articles guarantee that Sun's implementation(s) map Java threads
to native threads 1:1. They do claim that they use native threads natively,
and that the implementation scales well to multiprocessor systems.

I'm finding my google-fu not quite strong enough to come up with a definitive
understanding of how Sun's JVMs use native threads, even on RedHat Linux,
which is the only one they document.
 
L

Lew

Lew said:
I'm finding my google-fu not quite strong enough to come up with a
definitive understanding of how Sun's JVMs use native threads, even on
RedHat Linux, which is the only one they document.

The only Linux implementation they document with respect to how it handles
threads, that is.
 
L

Lew

Except for this comment:
"The NPTL approach keeps the 1-on-1 thread mapping
(1 user or Java thread to 1 kernel thread), but
leverages the kernel for thread-related operations,
including signal handling, synchronization, and thread creation speed,"
explains Calvin Austin, who serves as both lead engineer on Sun
Microsystems' port of J2SE to the Linux OS, and J2SE 1.5 specification
lead. "The NPTL library is now available in Red Hat Linux 9 by default.
This is a very exciting time for Java Linux developers."

<http://java.sun.com/developer/technicalArticles/JavaTechandLinux/RedHat/>
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,774
Messages
2,569,596
Members
45,143
Latest member
DewittMill
Top