Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Aug 1997 10:16:41 -0400 (EDT)
From:      Christopher Petrilli <petrilli@amber.org>
To:        Kyle Mestery <mestery@winternet.com>
Cc:        Peter Stubbs <peters@gil.com.au>, smp@FreeBSD.ORG
Subject:   Re: A how does it work question.
Message-ID:  <Pine.BSF.3.95q.970827101440.20292B-100000@chaos.amber.org>
In-Reply-To: <Pine.GSO.3.96.970827091116.7668F-100000@tundra.winternet.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In the end, I would think that software would be the conjstriction point
(in fact seperate memory makes it an MPP system, not an AMP/SMP system).
This is the concept behind ccNUMA, etc... 

Because of the nature of the FreeBSD kernel (and I suppose the probably
applies to Linux, but don't know), all I/O is threaded thru the #0 CPU,
and thereby it becomes a HUGE bottleneck.  

Am I correct?  This was what I was taught was the definition of a AMP
system, was that a single CPU controlled all I/O on the system, which is
why you have to go SMP to scale to X, and MPP to keep going from there.

Chris

On Wed, 27 Aug 1997, Kyle Mestery wrote:

> 
> On Wed, 27 Aug 1997, Christopher Petrilli wrote:
> 
> > Because of this, wouldn't it be appropriate to say that FreeBSD is an
> > Assymetric MP, not Symmetric?  Symmetric means that the kernel runs on
> > each processor, and there is no "one processor" which controls exclusivity
> > to the hardware.
> > 
> The symmetric/assymetric refers to the hardware.  This is from Curt
> Schimmel's book on Cacheing and MP systems:
> 
> "To be considered an SMP system, all of the CPUs in the system must be
> connected to a single bus and share a common pool of memory and share
> access to all I/O devices.  Each CPU must also have equal access to the
> memory and bus, and some form of bus arbitration must be considered.  The
> bus arbitration is usually entirely up to the hardware."
> 
> In other words, an assymetric-MP system would be a system where each CPU
> had it's own memory, own bus, etc.
> 
> Kyle Mestery
> StorageTek's Network Systems Group
> 7600 Boone Ave. N., Brooklyn Park, MN 55428
> mesteka@anubis.network.com, mestery@winternet.com
>  
> 
> > Chris
> > 
> > On Wed, 27 Aug 1997, Kyle Mestery wrote:
> > 
> > > On Wed, 27 Aug 1997, Peter Stubbs wrote:
> > > 
> > > > I've been forced to sell my soul lately by doing a couple of MS Win
> > > > NT courses ( mouths to feed etc.. ). It seems that NT runs a
> > > > seperate instance of the kernel on each CPU present to provide it's
> > > > SMP support.
> > > > 
> > > > Is this the way FBSD smp does it?
> > > 
> > > As far as I know, no.  There is only one copy of the kernel running.  At
> > > present, access to the kernel is only allowed for one CPU (except for a
> > > few areas), Steve has been working on making it reentrant.
> > > 
> > > > Is this the only way to do it?
> > > 
> > > No.  Having the kernel be reentrant is another way.  This requires the
> > > correct lock "pushdown" into the kernel.  Instead of one giant lock,
> > > subsystems can each have their own lock, allowing multiple processors to
> > > be in different sections of the kernel.  This allows for increased
> > > parallelism.
> > > 
> > > > Doesn't this mean that lots more memory would be used keeping data 
> > > > for 2 kernels?
> > > > 
> > > I would assume so, but I dont know for sure.
> > > 
> > > Kyle Mestery
> > > StorageTek's Network Systems Group
> > > 7600 Boone Ave. N., Brooklyn Park, MN 55428
> > > mesteka@anubis.network.com, mestery@winternet.com
> > > 
> > > 
> > > 
> > 
> 
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95q.970827101440.20292B-100000>