Subject: Re: x86 Port outperforms SPARC64 port on NetBSD v2.0.2
To: None <segv@netctl.net>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: port-sparc64
Date: 10/05/2005 22:39:31
On Wed, Oct 05, 2005 at 08:15:49AM +0100, segv@netctl.net wrote:
> On Tue, 04 Oct 2005 21:54:52 -0400
> Miles Nordin <carton@Ivy.NET> wrote:
> 
> > >>>>> "s" == segv  <segv@netctl.net> writes:
> > 
> >      s> it can't even schedule multiple threads within the
> >      s> same process onto different CPUs.
> > 
> > well, for sparc64 that's still academic but...is that really true?
> > I'm surprised because I thought this was exactly the whole point of
> > scheduler activations: to move just enough context switching into the
> > kernel to keep all CPUs busy, and do the rest in user space where it's
> > faster.  Otherwise it may as well just be pth?
> > 
> > pthread(3)
> > 
> > ENVIRONMENT
> >      PTHREAD_CONCURRENCY      The number of concurrent threads to be run.
> >                               This value should at least be 1, and smaller
> >                               than or equal to the number of CPUs.
> > 
> > Next you will tell me that if one thread gets stalled waiting for
> > pagein/out, all the other threads stall too ha ha.
> > 
> 
> I made my comment based on the following article
> 
> http://os.newsforge.com/print.pl?sid=05/06/09/2132233
> 
> Where Christos Zoulas states that threads from a single process cannot use more
> than one CPU
> 
> So, I guess this is something that NetBSD needs to impove

There were bugs with PTHREAD_CONCURRENCY > 1, I guess Christos had this in
mind when he said that. I think these issues have been fixed now.

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--