Talk:Native POSIX Thread Library
From Wikipedia, the free encyclopedia
I'm not sure that the threading experiment quoted on here is necessarily all that indicative of how good threading is in NPTL - after all, it's a Java environment, so you're more likely to be comparing how well threading is supported in the JVMs on the two platforms, than the thread library itself.
Perhaps it should be removed and replaced with a benchmark comparison of NPTL and LinuxThreads, with perhaps a comparison to threads on Solaris too? Sigbusyff
I think this comparison is meaningless. The result doesn't entirely depends on the threading implementation. It has something to do with the implementation of JVM. However I am not tring to say that SUN produced a worse JVM for Linux. Zhangle
Who is Edward Rice? Where is this research? If it isn't available to be read anywhere, why is it referenced in this http://en.wikipedia.org/wiki/NPTL entry. Also, if the research isn't available or is known to be faulty why is it still referenced? Considering these comments I believe it to be a better idea to remove the paragraph and wait for a decent study comparing LinuxThreads to NPTL which is more useful than a comparison to another Operating System. Thanks, Christopher Warner--64.61.118.58 15:31, 30 August 2005 (UTC)
I've removed the paragraph on NPTL and Windows threading in its entirety. Christopher Warner 216.254.126.222 03:11, 13 September 2005 (UTC)
Added a handy test for determining version from the command line (common knowledge). Also, I did some research on threading performance for Dr. Dobbs Magazine in May or June, and could add that in when I regain complete copyright. Big advantage is in thread creation; small advantage in handling thread contention. --Bluejack
I tested the 'getconf GNU_LIBPTHREAD_VERSION' utility on a Redhat system and it returned: NPTL 2.3.4. Interestingly enough, rpm -qa | grep nptl indicates that the system has the nonptl versions of many libraries installed. The nptl libraries in /usr/lib/nptl do not exist on this system so it appears that the system defaults to using Linux threads. I question the validity of the getconf GNU_LIBPTHREAD_VERSION test to determine whether NPTL is really supported on a system. --RandomTask
The system is either using NPTL or it is not. This depends on the way GlibC is compiled, it's one or the other, as there is no fallback system. So you should not need to question if it is really supported or not. Christopher Warner
- glibc is compiled twice, once for NPTL and once for LinuxThreads. The NPTL libs are installed to lib/tls and used by default. EdC 07:49, 14 March 2006 (UTC)
The text says that 1x1 threading "is the simplest possible threading implementation". However, most OS textbooks say that Nx1 threads (like GNU-Pth) can be considered simpler, because they are very easy to implement and need no kernel intervention. Thanks - Carlos Maziero, 200.192.112.146 11:13, 4 April 2007 (UTC)
The article implies NPTL requires kernel mods, but only mentions standard inclusion in glibc. Could someone clarify this and update current level of adoption (i.e., is this standard in the 2.6 kernel? Is this in, e.g., Ubuntu now as well?)? SimonFunk 20:48, 20 July 2007 (UTC)
The article also implies the LinuxThreads implementations require user-space context switches and that the kernel scheduler is not involed. I fairly confident that this is not the case. When clone is called on a process the child process is still managed by the kernel scheduler. Beavix 02:30, 10 August 2007 (UTC)
[edit] test with 100.000 threads
The test mentioned in the text is from 2002. I think it should be removed and replaced by more up-to-date info if that is to be had. --MarSch 09:35, 24 August 2006 (UTC)
The test results mentioned here are also seen in an article on LinuxJournal Introducing the 2.6 Kernel published on Thu, 2003-05-01. However, it is unclear if that is the source of the test results, or if that article is merely referring to test results reported elsewhere.
--ViM 11:42, 25 September 2006 (UTC)
Any news on this ? I tried creating 20,000 threads on a 2.6.25 kernel with a 2.7 libc. The source is here http://patraulea.com/hacks/nptl-test/ . My numbers on an 8-cpu 64bit Xeon machine are:
threads | runtime (sec) |
---|---|
5000 | 1.0 |
10000 | 3.9 |
20000 | 24.5 |
Hardly anything like the numbers in nptl-design.pdf . —Preceding unsigned comment added by 195.37.79.197 (talk) 20:39, 18 May 2008 (UTC)