Subject: Re: libpthread
To: William Henny <>
From: Gary Thorpe <>
List: tech-kern
Date: 06/24/2003 20:37:28
> An interesting article on the development of posix threading in
> Linux:
> I believe the latest offerings from Red Hat already uses NPTL, while
> all of
> the distributions will be using it come 2.6.
> As for the fate of NGPT:
> I think it says something when two programmers at Red Hat came up
> with an
> implementation around the 1:1 model that greatly outperformed the M:N
> implementation of the IBM/Intel folks, and in much shorter time.

You should examine the pro-NPTL benchmark more closely: there is no
source available (maybe because its so trivial) and from Ulrich
Drepper's description all it does it create a large number of threads.
There is also no mention of what versions of NPTL and NGPT are being
used, or what kernel version the patches were applied against. So what
exactly does it measure except how fast you can create lots of idle
threads? How many threaded applications do that and ONLY that? Did NPTL
win because of technical issues of political ones? I can only guess,
because the "benchmark" is too vague.

On the NGPT web site, their benchmarks include the missing details and
uses a test created by Sun to evaluate 1:1 vs. M:N threading models. In
this benchmark, NPTL fell short when larger numbers of threads were
used and when more CPU's were used in the machine. Based on this, I
would guess that NGPT may actually be the better design. The sun
benchmark is at:

and it includes source code. Of course, it also says that this test
should not be considered a realistic workload (at least they admitted

> And then there's Solaris' move from a M:N to a 1:1 model, as the
> former
> proved very difficult to debug, and the 1:1 implementation they came
> up with
> performed better anyway.

And there own test run on Linux shows that the M:N implementation is
better (scales better) when compared the 1:1 implementation for this
particular OS.

Post your free ad now!