2000Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Dynamic Load Balancing -->
<!--X-From-R13: Yriva Epbgg Zbaqba <ybaqbaNpf.hgx.rqh> -->
<!--X-Date: Thu, 16 Mar 2000 14:27:03 &#45;0800 -->
<!--X-Message-Id: Pine.GSO.4.10.10003161415070.14211&#45;100000#nala,cs.utk.edu -->
<!--X-Content-Type: text/plain -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Dynamic Load Balancing</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:london#cs,utk.edu">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00634.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00637.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00674.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00634.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00638">Author</A>
&nbsp;|&nbsp;<A HREF="#00638">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00638">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Dynamic Load Balancing</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: Mud-Dev &lt;<A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A>&gt;</LI>
<LI><em>Subject</em>: [MUD-Dev] Dynamic Load Balancing</LI>
<LI><em>From</em>: Kevin Scott London &lt;<A HREF="mailto:london#cs,utk.edu">london#cs,utk.edu</A>&gt;</LI>
<LI><em>Date</em>: Thu, 16 Mar 2000 14:17:02 -0500 (EST)</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>

On Thu, 16 Mar 2000, Bruce wrote:
&gt;   Does anyone know anything about their dynamic load balancing or how it
&gt;   works?  I haven't really seen any write-ups on that. 

Well I have never used dynamic load balancing in a game environment but
since I write parallel libraries (pvm, MPI, etc...) and parallize code for
a living, I believe I can add some on this topic.
In a scientific type of code, dynamic load balancing is done in one of two
different ways.  First and easiest way to accomplish this is to have a
"master" process that doles out work when slaves are ready to process it.
This effectively allows the loadwork to be spread out evenly and also has
the added benefit that you can use it to make the application fault
taulerant.  The second way is to do series of benchmarks, find the fastest
machines and then kick off more work on the faster machines.  That being
said, I can see dynamic load balancing being achieved in several different
ways in a game environment.  Of course there are hundreds of ways to do
said, I can see dynamic load balancing being achieved in several different
ways in a game environment.  Of course there are hundreds of ways to do
this depending on if you are running a server heavy model (server does
most of the computations, which I believe Diablo II is running), or client
doing most of the work with the server simply updating the client (IE
client guesses what will happen, this is how most Quake type games are
ran).  But for a role playing model, I personally think a server model is
a better way to run that.  The way I think load balancing can be achieved
is to have several machines responsible for different portions of the
game (this is more static load balancing though).  Say one machine for a
certain area, another machine handles another area, one to handle weather
computations, etc.... Then they could all communicate via a parallel
library or your own socket code (just remember to use xdr if the machines
store values in different formats).  If you wanted dynamic load balancing,
you could have several machines running the same stuff (IE same, area,
etc...) and have a master login machine that would keep track of how many
were logged into each machine, load on the machine, etc.... and
automatically reroute the person to the lowest loaded machine and then use
parallel libraries to communicate and keep all the servers in-synch ( or
automatically reroute the person to the lowest loaded machine and then use
parallel libraries to communicate and keep all the servers in-synch ( or
shared memory/threads if on a multiprocessor machine).  I may have gone
off topic, or not answered your question but I would be glad to expand on
this topic if anyone would like to hear more.

Kevin London





_______________________________________________
MUD-Dev mailing list
MUD-Dev#kanga,nu
<A  HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A>

</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<!--X-Follow-Ups-End-->
<!--X-References-->
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00634.html">[MUD-Dev] Questions about the MudDev FAQ</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00637.html">[MUD-Dev] MudDev FAQ part 1</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00674.html">Re: [MUD-Dev] [CODE] unique items</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00634.html">[MUD-Dev] Questions about the MudDev FAQ</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00638"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00638"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>Re: [MUD-Dev] [CODE] unique items</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<ul compact>
<ul compact>
<LI><strong><A NAME="00665" HREF="msg00665.html">Re: [MUD-Dev] [CODE] unique items</A></strong>, 
J. Coleman <a href="mailto:stormknight#alltel,net">stormknight#alltel,net</a>, Mon 20 Mar 2000, 05:26 GMT
</LI>
</ul>
<LI><strong><A NAME="00661" HREF="msg00661.html">Re: [MUD-Dev] [CODE] unique items</A></strong>, 
Matthew Mihaly <a href="mailto:diablo#best,com">diablo#best,com</a>, Mon 20 Mar 2000, 01:42 GMT
</LI>
<LI><strong><A NAME="00669" HREF="msg00669.html">Re: [MUD-Dev] [CODE] unique items</A></strong>, 
Lord Ashon <a href="mailto:ashon#wsunix,wsu.edu">ashon#wsunix,wsu.edu</a>, Mon 20 Mar 2000, 17:35 GMT
</LI>
<LI><strong><A NAME="00674" HREF="msg00674.html">Re: [MUD-Dev] [CODE] unique items</A></strong>, 
J C Lawrence <a href="mailto:claw#cp,net">claw#cp,net</a>, Tue 21 Mar 2000, 20:24 GMT
</LI>
</ul>
</ul>
</ul>
</LI>
<LI><strong><A NAME="00638" HREF="msg00638.html">[MUD-Dev] Dynamic Load Balancing</A></strong>, 
Kevin Scott London <a href="mailto:london#cs,utk.edu">london#cs,utk.edu</a>, Thu 16 Mar 2000, 22:27 GMT
<LI><strong><A NAME="00634" HREF="msg00634.html">[MUD-Dev] Questions about the MudDev FAQ</A></strong>, 
Marian Griffith <a href="mailto:gryphon#iaehv,nl">gryphon#iaehv,nl</a>, Thu 16 Mar 2000, 22:27 GMT
<LI><strong><A NAME="00635" HREF="msg00635.html">[MUD-Dev] MudDev FAQ part II</A></strong>, 
Marian Griffith <a href="mailto:gryphon#iaehv,nl">gryphon#iaehv,nl</a>, Thu 16 Mar 2000, 22:26 GMT
<LI><strong><A NAME="00633" HREF="msg00633.html">Re: [MUD-Dev] better usage through mechanics [from: CGDC dinner]</A></strong>, 
Lovecraft <a href="mailto:dave#darkages,com">dave#darkages,com</a>, Thu 16 Mar 2000, 22:26 GMT
<UL>
<LI><strong><A NAME="00642" HREF="msg00642.html">Re: [MUD-Dev] better usage through mechanics [from: CGDC dinner]</A></strong>, 
Joel Kelso <a href="mailto:joel#ee,uwa.edu.au">joel#ee,uwa.edu.au</a>, Fri 17 Mar 2000, 02:36 GMT
</LI>
</UL>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>