From: mash@mash.engr.sgi.com (John R. Mashey)
Newsgroups: comp.arch
Subject: Re: UMA vs SMP?
Date: 3 Aug 1998 21:44:55 GMT
In article <6q4kc1$sg5$1@news1.bu.edu>, brianm@csa.bu.edu (Brian Mancuso)
writes:
|> Organization: Computer Science Department, Boston University, Boston, MA, USA
|>
|> mash@mash.engr.sgi.com (John R. Mashey) writes:
|> :
|> : 3) Early customer presentations got confused on occasion, as
|> : a ccNUMA presentation might compare with UMA (one way), and then
|> : the O2 folks would come in, and use UMA, but in the other way.
|>
|> One thing I've never understood is the use of `CC-', as in CC-NUMA, which
|> seems to occur only in the context of SGI Origin2000 discussion. What
As others have pointed out, cc = cache-coherent.
The ccnuma term appears in websites of Sequent, DG, and HP, as well as SGI.
It has been the standard textbook term for years, as seen in
Lenoski & Weber, "Scalable Shared-Memory Multiprocessing."
Although ccNUMA is hardly an SGI-local term, one can imagine how
such an impression might occur.
1) Every ccNUMA is a NUMA, but NUMA is easier to write and say,
and since most NUMA systems out there happen to be ccNUMAs, many people
often drop the cc part for simplicity, even though this bugs computer
architects as imprecise.
2) SGI has a bunch of computer architects who are picky about terminology,
and try to keep technical writers and marketeers precise as well.
--
-john mashey DISCLAIMER: <generic disclaimer: I speak for me only...>
EMAIL: mash@sgi.com DDD: 650-933-3090 FAX: 650-969-6289
USPS: Silicon Graphics/Cray Research 6L-005,
2011 N. Shoreline Blvd, Mountain View, CA 94043-1389

From: mash@mash.engr.sgi.com (John R. Mashey)
Newsgroups: comp.arch
Subject: Re: UMA vs SMP?
Date: 5 Aug 1998 04:27:43 GMT
In article <6q7hal$1je$1@msunews.cl.msu.edu>, brehob@cps.msu.edu (Mark W
Brehob) writes:
|> * Does anyone actually call a NUMA machine an SMP? I've
|> never seen anyone do so. To me it seems that SMP is
|> often used to describe a small (2-8 processor) UMA.
1) Recall that SMP could stand for Symmetric MultiProcessing, or
Shared-memory MultiProcessor, hence a ccNUMA may well be an
SMP under the latter definition, for sure, and maybe even under the
former, even though it is a NUMA, and not a UMA (UMA under the
high-end system usage.) (Ugh, what a sentence).
When somebody asks me this, I say: "yes, a ccNUMA can be considered
a kind of SMP, but common usage is that an SMP is uniform-memory
multiprocessor, typically using a shared-bus, or occasionally a
centalized crossbar setup."
SMP has certainly been used for years to describe the (larger than
2-8P) systems that have been shipped by Pyramid, Sequent, SGI,
Sun, DEC, HP, IBm, etc. Since most of them have been symmetric in
recent years, the tendency has been to use "Shared" as the meaning.
|> * Are there any ASMP machines in existence? Could someone
|> give some examples from the last 10 years or so?
There were a number of minicomputers & early micro based systems
that either had hardware assymetries, or operating system assymetries;
sometimes people called these attached processors, and kept the
OS running on the main CPU.
This hasn't been popular for years.
|> - Does the textbook definition of SMP really have any meaning as I
|> don't recall seeing a ASMP built in the last 10+ years?
Yes, because it more commonly has been meant as Shared-memory MP
in recent years, often to distinguish it from typical MPPs taht did
not have shared-memory.
--
-john mashey DISCLAIMER: <generic disclaimer: I speak for me only...>
EMAIL: mash@sgi.com DDD: 650-933-3090 FAX: 650-969-6289
USPS: Silicon Graphics/Cray Research 6L-005,
2011 N. Shoreline Blvd, Mountain View, CA 94043-1389

From: mash@mash.engr.sgi.com (John R. Mashey)
Newsgroups: comp.arch
Subject: Re: UMA vs SMP?
Date: 5 Aug 1998 19:11:44 GMT
In article <m3ww8nwllj.fsf@fred.muc.de>, Andi Kleen <ak@muc.de> writes:
|> mash@mash.engr.sgi.com (John R. Mashey) writes:
|> >
|> > |> * Are there any ASMP machines in existence? Could someone
|> > |> give some examples from the last 10 years or so?
|> >
|> > There were a number of minicomputers & early micro based systems
|> > that either had hardware assymetries, or operating system assymetries;
|> > sometimes people called these attached processors, and kept the
|> > OS running on the main CPU.
|> > This hasn't been popular for years.
|>
|> How about the various intelligent RAID SCSI adapters for PCs (some of them
|> running 680x0 or PPCs) or I2O ? Would you call this ASMP ?
People usually just called these intelligent I/O processors.
ASMP was usually reserved for cases where user programs could run on the
processors, or where there was some assymetry in the I/O connections.
It did start to get a little confusing when people starting using the
same, or closely realted microprocessors both as the main CPus and as the
I/O processors. For example, the Convergent MegaFrame of the early 1980s used:
68010s as main applications processors, running UNIX
80186s as file processors & comm processors, running CTOS
(but CTOS was a real OS, used in CT's workstations as well,
and you could actually run user programs there, and they
actully ran filesystem code.
One would probably label this an ASMP, not because the 68Ks were assymetric,
but because the relationships amongst the various CPUs were assymetric.
--
-john mashey DISCLAIMER: <generic disclaimer: I speak for me only...>
EMAIL: mash@sgi.com DDD: 650-933-3090 FAX: 650-969-6289
USPS: Silicon Graphics/Cray Research 6L-005,
2011 N. Shoreline Blvd, Mountain View, CA 94043-1389

From: mash@mash.engr.sgi.com (John R. Mashey)
Newsgroups: comp.arch
Subject: Re: UMA vs SMP?
Date: 31 Jul 1998 20:29:40 GMT
In article <y4u33yfliu.fsf@mailhost.neuroinformatik.ruhr-uni-bochum.de>,
Jan Vorbrueggen <jan@mailhost.neuroinformatik.ruhr-uni-bochum.de> writes:
|> Joachim Strombergson <emwchim@emw.ericsson.se> writes:
|>
|> > Need to get one embarrasing hole in my knowledge covered: What is the
|> > difference between UMA and SMP? Is SMP a special case of UMA or...?
|>
|> They address different aspect of multiprocessing systems. SMP =
|> symmetric multiprocessing; indicates a system in which all processors
|> are created equal,
Actually, it is more confusing than this, in that
"UMA" has two distinct meanings in different parts of the design space:
1) In SMPs, it is as Jan writes: Uniform Memory Access.
2) In PCs and workstatations, the same acronym means
Unified Memory Architecture
meaning that there is one chunk of memory that does everything,
including frame-buffer, texture-memory, video, etc; this
approach is typically taken to move more capabilities into
a lower price point. I think there were some Suns that
worked this way (Sun3/50? maybe somebody can confirm or not),
maybe some PCs, and for sure, an SGI O2.
3) Early customer presentations got confused on occasion, as
a ccNUMA presentation might compare with UMA (one way), and then
the O2 folks would come in, and use UMA, but in the other way.
Note: in the higher-part of the design space, not that Non-Uniformity
isn't considered goodness, it's considered to be a reasonable tax paid
to the laws of physics in order to get other benefits of cost & scalability,
but good engineers must fight like crazy to:
a) Make the worst-case remote latency no more than 3-4X the
local latency. [There are some that are 10X or 20X, and
it is difficult to use such as general SMPs.]
b) Keep the hardware latency as low as possible.
c) Use page allocation, replication, migration techniques to
improve locality , likewise, rework the OS itself for this.
d) Use CPUs that are good at overlapping cache-misses to reduce
the effective latency.
That is, no one does NUMA because they want the Non-Uniform to be big,
it's because laws of physics catch up with you.
--
-john mashey DISCLAIMER: <generic disclaimer: I speak for me only...>
EMAIL: mash@sgi.com DDD: 650-933-3090 FAX: 650-969-6289
USPS: Silicon Graphics/Cray Research 6L-005,
2011 N. Shoreline Blvd, Mountain View, CA 94043-1389