[MUD-Dev] MMORPG/MMOG Server design
Keith Brewer
zyzebo at wolfpackstudios.com
Sat Feb 22 12:48:28 CET 2003
From: "Weston Fryatt" <wfryatt at muuf.com>
>> On the homogenous back end cluster side there are several
>> different approaches, each with tradeoffs in hardware expense,
>> code complexity, etc. You can go for SGI-style CC:NUMA clusters
>> with fully virtually VM and CPU resources such that processes and
>> VM blocks freely migrate about the cluster according to your load
>> distribution algorithms. Without significant support from your
>> system vendor and an experienced development team this can be
>> expensive and difficult to get right, but works beautifully when
>> it does.
> I couldn't even begin to afford something like
> this... Unfortunately, the server side is going to have to be x86
> based. At least this version.
Keep in mind that Intel architecture machines use a shared memory
bus which isn't very friendly to highly contentious multi-threaded
apps (scheduling will kill you because threads will continually get
blocked). That's the main reason we went with SGI (MIPS) for
Shadowbane. Also keep in mind that not all Operating Systems are
equal when it comes to thread scheduling maturity. Linux is getting
better but they have a long ways to go. Most of the BSD's that are
primarily Intel based (NetBSD, FreeBSD, etc) are even more immature
when it comes to serious thread contention (some of these don't even
have SMP support at all). If you HAVE to go Intel, Solaris is about
the best there is for this but you'll still run into the shared
memory bus problem eventually.
For us, our core server development was done under OSX. It's a
shame Apple only makes 2 processor servers for this OS as it's
really pretty damned good at thread scheduling (and when running on
Apple hardware doesn't suffer the shared memory bus bottleneck).
So that said, if you're even considering going "One MP Box" later
on, I'd definitely recommend starting out on OSX as you can get a 2p
server pretty cheap and you'll be better able to prep for the
challenges you'll face when/if you step up to a platform like IRIX
or Solaris.
KB
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev
More information about the mud-dev-archive
mailing list