[MUD-Dev] MMORPG/MMOG Server design - intel-ligent choices of hardware ; )

Brian Hook brianhook at pyrogon.com
Sun Feb 23 01:28:26 New Zealand Daylight Time 2003

On Sat, 22 Feb 2003 22:15:09 +0000, Adam M wrote:

> read/write!) In a box with 1 CPU, only 1 CPU can physically
> read/write memory at once. In a box with 4 CPU's, only 1 CPU
> can...in a box with 32 CPU's, only 1 CPU could...arrrgh!

The CPU itself has a frontside bus that lets it communicate to the
main memory subsystem, but how you arbitrate access is up to the
chipset designer.  The CPU architects just have to make sure that
cache coherency can be maintained with something like MOESI --
although cache coherency (snooping, invalidation, fills, etc.) can
seriously suck the wind out of any SMP system.

On a regular PC, memory traffic is going to go straight from the CPU
to the memory controller (MCH or North Bridge).  On low-end SMP PCs
this bandwidth is often split, either behind the FSB (dual G4 or
Xeon) or at the memory controller (Athlon 760MPX)

At the very high end Intel stuff such as the Unisys ES7000 stuff,
you're looking at 32 processors sharing 20GB/second memory
bandwidth, which isn't great, but the architecture also assigns
local cache to groups of four processors (32MB per 4 P4 Xeons) to
offset this somewhat.

The reality is that you're going to be hard pressed to find any SMP
architecture that allows full processor bandwidth to main memory
with all processors simultaneously.  That's just not a cost
effective engineering problem to pursue because with local caches
the need for this is really limited.

AMD Opteron should be very good at lower sizes of SMP since it looks
like a traditional NUMA system.  Each Opteron has an integrated
memory controller with local memory, and remote memory accesses are
resolved over HyperTransport links.  Unfortunately since the HT
links are point-to-point, the limit will probably be around 8

Past 8 processors and you're looking at exotic crossbar systems such
as NUMALink or Sun's stuff.  You can have that performance, but at
what cost (hint: list price for a 128-processor Origin 3000 is
something close to $3M -- a 64-node cluster of dual processor Intel
racks is probably more like like 1/10 to to 1/20th that).

For price performance and scalability, using clusters really seems
like the no-brainer.  It's way less convenient, but it's not the end
of the world.

MUD-Dev mailing list
MUD-Dev at kanga.nu

More information about the MUD-Dev mailing list