SMP Theory (was: Re: Interesting analysis of linux kernel threading by IBM)
Ralf Baechle
ralf en uni-koblenz.de
Mar Ene 25 04:52:19 CST 2000
On Tue, Jan 25, 2000 at 12:56:45AM +0100, Jamie Lokier wrote:
> dg50 en daimlerchrysler.com wrote:
> > If this is indeed the case (please correct any misconceptions I have) then
> > it strikes me that perhaps the hardware design of SMP is broken. That
> > instead of sharing main memory, each processor should have it's own main
> > memory. You connect the various main memory chunks to the "primary" CPU via
> > some sort of very wide, very fast memory bus, and then when you spawn a
> > thread, you instead do something more like a fork - copy the relevent
> > process and data to the child cpu's private main memory (perhaps via some
> > sort of blitter) over this bus, and then let that CPU go play in its own
> > sandbox for a while.
>
> I think you just reinvented NUMA -- Non-Uniform Memory Access. Every
> CPU can access the others' memory, but you really want them to
> concentrate on their own. SGI does some boxes like that.
SGI does ccNUMA, cache coherent NUMA. The difference is that unlike in
`real' NUMA machines each processor on a node has access to memory in each
node directly. A node in an Origin system is a dual CPU SMP system.
> Linux even has a memory allocator which is moving in the direction of
> supporting those things.
It's actually the start of the support for the Origin series but other
systems are expected to jump the wagon.
> > Which really is more like the "array of uni-processor boxen joined by a
> > network" model than it is current SMP - just with a REALLY fast&wide
> > network pipe that just happens to be in the same physical box.
>
> It's been proposed to have multiple instances of the OS running too,
> instead of one OS running on all CPUs.
Ok, but users and application developers still want the entire system to
feel like a single system.
Ralf
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
Más información sobre la lista de distribución Ayuda