A recent feature on kerneltrap.org: “Ulrich Drepper recently announced the first public release of the Red Hat sponsored ‘Native POSIX Thread Library’ (NPTL). He explained, ‘Unless major flaws in the design are found this code is intended to become the standard POSIX thread library on Linux system and it will be included in the GNU C library distribution.‘One test mentioned in Ulrich’s email – running 100,000 concurrent threads on an IA-32 – generated some interesting discussion. Ingo Molnar explained that with the current stock 2.5 kernel such a test requires roughly 1GB RAM, and the act of starting and stopping all 100,000 threads in parallel takes only 2 seconds. In comparison, with the 2.5.31 kernel (prior to Ingo’s recent threading work), such a test would have taken around 15 minutes.“
Linux’s pseudo-LWPs have always been an annoyance (at least to me) It seems like they have finally been replaced with a real thread model.
Now, if they could get rid of the BKL, perhaps their SMP will reach FreeBSD 4 performance levels
How does this new library fit in with the Next Gen Posix Threads that IBM is working on? (http://www-124.ibm.com/developerworks/opensource/pthreads/)
They look to me like the same thing.
I can only assume you’re being sarcastic as FreeBSD 4’s SMP performace is stuck at Linux 2.0 levels. It’s absolutely dire, hence all the effort being expended on FreeBSD 5’s SMP scalability.
Linux 2.4 is already reasonably scalable. Linux 2.5/2.6 is simply amazing; the work done by Ingo Molnar and Andrew Morton has resulted in a kernel which is as scalable as Solaris and AIX. It’s finely locked, it’s multithreaded, it’s got a world beating scheduler, it’s now got an excellent threading model, Linus has started merging Andrews IO and VM work…
some of the most talented software engineers in the world are working on the Linux kernel and it shows.
They look to me like the same thing.
They’re similar in aims, but the NPTL is even better than the IBM stuff.
It’s finely locked
And surely you are jesting here. 2.5 still contains the BKL, which has been slated for removal for the past six years, yet this has never been accomplished. The BKL is about as coarsely grained as you can get.
FreeBSD 5 is one of the few operating systems which is attempting fine grained locking, and they’re certainly having a hell of a time getting it to work, so much so that they’ve had to push back the release of DP2 due to some serious locking issues.
some of the most talented software engineers in the world are working on the Linux kernel and it shows.
It shows in that they’ve managed to push a kernel that wasn’t designed for SMP in the first place to the levels it’s reached today. This is certainly to be applauded, but ultimately much kruft from the poor initial design (like the BKL, a hack to get around the kernel’s utter non-reentrancy) remains and needs to be removed.
If you look towards a past interview that was here on osnews, Matt Dillon, one of the top freebsd developers himself states that linux is a year ahead of FreeBSD in SMP.
In fact, I believe Linux 2.2 has better SMP than FreeBSD 4.
FreeBSD hasn’t had superior SMP since the Linux 2.0 days.
So are you just severely misinformed or are you just trolling?
… Linux has better SMP than OpenBSD 🙂
Thanks for calling me a troll while citing only unsupported, anecdotal evidence.
The whole FreeBSD 4 thing was a bad joke. Read the second post I made to see my real position.
The ultimate situation is this… operating systems with fine grained locking have been shown to be much more scalable over multiple processors (Solaris).
Due to its poor initial design, Linux currently has *extremely* coarse grained locking in several places.
FreeBSD 5.0 is attempting to implement fine grained locking, and having a great deal of trouble with it.
Linux is moving to finer grained locking, but this has been a very slow process.
And surely you are jesting here
Um, no. The BKL is greatly depreceated and is very rarely invoked now. Rather, there exists a large number of ‘fine’ spinlocks which are used in virtually all cases. Indeed, it’s the presence of these spinlocks which allowed Robert Love to make the kernel premptible so easily (ie. the SMP locking infrastructure is used to demark preemption exclusion points. You couldn’t do that if the BKL was the only locking mechanism or was even widely used.)
and they’re certainly having a hell of a time getting it to work, so much so that they’ve had to push back the release of DP2 due to some serious locking issues.
The fact that FreeBSD 4 is around Linux 2.0 levels and that they’re severely under manned has a great deal to do with the slow progress.
It shows in that they’ve managed to push a kernel that wasn’t designed for SMP in the first place to the levels it’s reached today.
The development Linux kernel of today contains very few internal similarities with even Linux 2.0.
This is certainly to be applauded, but ultimately much kruft from the poor initial design (like the BKL, a hack to get around the kernel’s utter non-reentrancy) remains and needs to be removed.
Surprisingly little “cruft” remains and what does is rapidly being removed. The kernel is re-enterant, multithreaded, finely locked, has a sophisticated and efficient scheduler, a sophisticated, non blocking and performant VM subsystem and a multithreaded network stack.
Frankly, saying:
Now, if they could get rid of the BKL, perhaps their SMP will reach FreeBSD 4 performance levels
shows just how ignorant and/or misinformed you are.
A joke? Well, then that makes far more sense.
Can you see how I thought that was rather trollish then?