]> AND Private Git Repository - loba-papers.git/blobdiff - loba-besteffort/loba-besteffort.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Normalize labels.
[loba-papers.git] / loba-besteffort / loba-besteffort.tex
index 6a766026a07a1a23c59851f4e4baf6aa3c7cf83a..d774cce15fce8c3c4ad4df8dcc98c3458b92fa4f 100644 (file)
@@ -134,20 +134,21 @@ order  to send a  message, a  latency delays  the sending  and according  to the
 network  performance and  the message  size, the  time of  the reception  of the
 message also varies.
 
-In the following of this paper, Section~\ref{BT algo} describes the Bertsekas
-and Tsitsiklis' asynchronous load balancing algorithm. Moreover, we present a
-possible problem in the convergence conditions.  Section~\ref{Best-effort}
-presents the best effort strategy which provides an efficient way to reduce the
-execution times.  This strategy will be compared with other ones, presented in
-Section~\ref{Other}.  In Section~\ref{Virtual load}, the virtual load mechanism
-is proposed.  Simulations allowed to show that both our approaches are valid
-using a quite realistic model detailed in Section~\ref{Simulations}.  Finally we
-give a conclusion and some perspectives to this work.
+In the following of this paper, Section~\ref{sec.bt-algo} describes the
+Bertsekas and Tsitsiklis' asynchronous load balancing algorithm. Moreover, we
+present a possible problem in the convergence conditions.
+Section~\ref{sec.besteffort} presents the best effort strategy which provides an
+efficient way to reduce the execution times.  This strategy will be compared
+with other ones, presented in Section~\ref{sec.other}.  In
+Section~\ref{sec.virtual-load}, the virtual load mechanism is proposed.
+Simulations allowed to show that both our approaches are valid using a quite
+realistic model detailed in Section~\ref{sec.simulations}.  Finally we give a
+conclusion and some perspectives to this work.
 
 
 
 \section{Bertsekas  and Tsitsiklis' asynchronous load balancing algorithm}
-\label{BT algo}
+\label{sec.bt-algo}
 
 In  order  prove  the  convergence  of  asynchronous  iterative  load  balancing
 Bertsekas         and        Tsitsiklis         proposed         a        model
@@ -170,7 +171,7 @@ amount of  load received by processor $j$  from processor $i$ at  time $t$. Then
 the amount of load of processor $i$ at time $t+1$ is given by:
 \begin{equation}
 x_i(t+1)=x_i(t)-\sum_{j\in V(i)} s_{ij}(t) + \sum_{j\in V(i)} r_{ji}(t)
-\label{eq:ping-pong}
+\label{eq.ping-pong}
 \end{equation}
 
 
@@ -193,9 +194,9 @@ x_2(t)=100   \\
 x_3(t)=99.99\\
  x_3^2(t)=99.99\\
 \end{eqnarray*}
-In this case, processor $2$ can  either sends load to processor $1$ or processor
-$3$.   If  it  sends  load  to  processor $1$  it  will  not  satisfy  condition
-(\ref{eq:ping-pong})  because  after the  sending  it  will  be less  loaded  that
+In this case, processor $2$ can either sends load to processor $1$ or processor
+$3$.  If it sends load to processor $1$ it will not satisfy condition
+(\ref{eq.ping-pong}) because after the sending it will be less loaded that
 $x_3^2(t)$.  So we consider that the \emph{ping-pong} condition is probably to
 strong. Currently, we did not try to make another convergence proof without this
 condition or with a weaker condition.
@@ -209,7 +210,7 @@ that they are sufficient to ensure the convergence of the load-balancing
 algorithm.
 
 \section{Best effort strategy}
-\label{Best-effort}
+\label{sec.besteffort}
 
 In this section we describe a new load-balancing strategy that we call
 \emph{best effort}.  First, we explain the general idea behind this strategy,
@@ -281,12 +282,12 @@ potentially wrong decision has a lower impact.
 
 Concretely, once $s_{ij}$ has been evaluated as before, it is simply divided by
 some configurable factor.  That's what we named the ``parameter $k$'' in
-Section~\ref{Results}.  The amount of data to send is then $s_{ij}(t) = (\bar{x}
-- x^i_j(t))/k$.
-\FIXME[check that it's still named $k$ in Sec.~\ref{Results}]{}
+Section~\ref{sec.results}.  The amount of data to send is then $s_{ij}(t) =
+(\bar{x} - x^i_j(t))/k$.
+\FIXME[check that it's still named $k$ in Sec.~\ref{sec.results}]{}
 
 \section{Other strategies}
-\label{Other}
+\label{sec.other}
 
 Another load balancing strategy, working under the same conditions, was
 previously developed by Bahi, Giersch, and Makhoul in
@@ -307,7 +308,7 @@ neighbor.
 
 
 \section{Virtual load}
-\label{Virtual load}
+\label{sec.virtual-load}
 
 In this section,  we present the concept of \emph{virtual load}.  In order to
 use this concept, load balancing messages must be sent using two different kinds
@@ -337,7 +338,7 @@ information of the load they will receive, so they can take in into account.
 \FIXME{describe integer mode}
 
 \section{Simulations}
-\label{Simulations}
+\label{sec.simulations}
 
 In order to test and validate our approaches, we wrote a simulator
 using the SimGrid
@@ -348,13 +349,12 @@ as the initial distribution of load, the interconnection topology, the
 characteristics of the running platform, etc.  Then several metrics
 are issued that permit to compare the strategies.
 
-The simulation model is detailed in the next section (\ref{Sim
-  model}), and the experimental contexts are described in
-section~\ref{Contexts}.  Then the results of the simulations are
-presented in section~\ref{Results}.
+The simulation model is detailed in the next section (\ref{sec.model}), and the
+experimental contexts are described in section~\ref{sec.exp-context}.  Then the
+results of the simulations are presented in section~\ref{sec.results}.
 
 \subsection{Simulation model}
-\label{Sim model}
+\label{sec.model}
 
 In the simulation model the processors exchange messages which are of
 two kinds.  First, there are \emph{control messages} which only carry
@@ -491,10 +491,11 @@ iteratively runs the following operations:
 \end{algorithm}
 
 \paragraph{}\FIXME{ajouter des détails sur la gestion de la charge virtuelle ?
-par ex, donner l'idée générale de l'implémentation.  l'idée générale est déja décrite en section~\ref{Virtual load}}
+  par ex, donner l'idée générale de l'implémentation.  l'idée générale est déja
+  décrite en section~\ref{sec.virtual-load}}
 
 \subsection{Experimental contexts}
-\label{Contexts}
+\label{sec.exp-context}
 
 In order to assess the performances of our algorithms, we ran our
 simulator with various parameters, and extracted several metrics, that
@@ -643,7 +644,7 @@ With these constraints in mind, we defined the following metrics:
 
 
 \subsection{Experimental results}
-\label{Results}
+\label{sec.results}
 
 In this section, the results for the different simulations will be presented,
 and we'll try to explain our observations.