[MUD-Dev] MMORPG/MMOG Server design

Mike Shaver shaver at off.net
Sat Feb 22 17:07:28 New Zealand Daylight Time 2003

On Feb 22, Keith Brewer wrote:

> 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).

Hmm.  How does the shared memory bus affect your scheduler?  Is the
problem that your scheduler is kicking in when a thread blocks
waiting for access to the memory bus, similar to the HyperThreading
stuff?  I thought the Linux scheduler problems I talked to you guys
about last year were just related to scheduler suckiness in the
kernel resulting in starvation.

> 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.

As far as Linux goes, I think that you'll end up being a lot happier
with the nptl stuff[*] that is now available in the upcoming Red Hat
8.1 release.  Not great timing for Wolfpack, certainly, but if I
were starting on a game server now I think that Hammer+nptl would be
worth a serious look.  (If, you know, Hammer ever ships in

  [*] http://people.redhat.com/drepper/nptl-design.pdf

Linux threading sucked a lot for a long, long time, but it's finally
getting the attention it deserves.  (If you have a good test case
for the contention and scheduling issues you saw under Linux, I'm
sure that the kernel folks would be very interested in giving it a
spin with the new schedulers and threading apparatus.  You know, if
you're not busy shipping a game or anything. =) )


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

More information about the MUD-Dev mailing list