Subject: Re: 1:1 threading model
To: Noriyuki Soda <soda@sra.co.jp>
From: Gary Thorpe <gathorpe79@yahoo.com>
List: tech-kern
Date: 01/10/2003 09:57:41
 --- Noriyuki Soda <soda@sra.co.jp> wrote: > >>>>> On Fri, 10 Jan 2003
20:24:00 +0900,
> 	Bang Jun-Young <junyoung@netbsd.org> said:
> 
> > For that matter, Sun's paper would be helpful. It includes actual
> > benchmark results with two models.
> 
> I have some doubts about the Sun's paper.
> 
> Theoretically, M:N thread should be faster on some benchmarks which
> creates lots of userland threads which only do computational work.
> Because carefelly implemented scheduler activations don't have to
> use any system call for mutex and condition variable handlings,
> and a system-call is 10 times slower than a function-call with
> today's
> processor even on recent linux.
> 
> Sun's paper doesn't show any results which match with this theory,
> and there is no excuse or explanation why 1:1 is always faster on
> their benchmarks.
> --
> soda

I read a paper comparing Sun's thread model with Windows NT (they were
compared on an x86 machine). It seems that Sun's implementation of M:N
needs all kinds of tweaks to get it to use maximum paralleism: the
default usage of M:N did not allocate more LWP's to use all 4 of the
machine processors. However, by manually setting some things, it seems
Solaris's model was slightly better at many things (but not all
things).

The paper is available at:
http://www.usenix.org/publications/library/proceedings/usenix-nt98/full_papers/zabatta/zabatta.pdf

As for Linux, I read that the 1:1 model was developed "out of sight"
and that they did not communicate with the people developing the M:N
model. Both are faster than the current model, but the 1:1 seems to be
faster at things like thread creation. The material I could find
suggested that the 1:1 model has been more finely tuned.

______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca