]> AND Private Git Repository - rce2015.git/blobdiff - paper.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
pas mal de choses à éclaircir
[rce2015.git] / paper.tex
index 5b8ada3eb4a39c28943053fe5ec0d6e434ec5b3b..af2303eed3c0d1804e0c448c6aad04306b7c4aba 100644 (file)
--- a/paper.tex
+++ b/paper.tex
@@ -270,7 +270,7 @@ where $x_\ell$ are sub-vectors of the solution $x$, $b_\ell$ are the sub-vectors
 A_{\ell\ell} x_\ell = c_\ell,\mbox{~for~}\ell=1,\ldots,L,
 \label{eq:03}
 \end{equation}
-where right-hand sides $c_\ell=b_\ell-\sum_{m\neq\ell}A_{\ell m}x_m$ are computed using the shared vectors $x_m$. In this paper, we use the well-known iterative method GMRES ({\it Generalized Minimal RESidual})~\cite{saad86} as an inner iteration to approximate the solutions of the different splittings arising from the block Jacobi multisplitting of matrix $A$. The algorithm in Figure~\ref{01} shows the main key points of our block Jacobi two-stage method executed by a cluster of processors. In line~\ref{solve}, the linear sub-system~(\ref{eq:03}) is solved in parallel using GMRES method where $\MIG$ and $\TOLG$ are the maximum number of inner iterations and the tolerance threshold for GMRES respectively. The convergence of the two-stage multisplitting methods, based on synchronous or asynchronous iterations, has been studied by many authors for example~\cite{Bru95,bahi07}.
+where right-hand sides $c_\ell=b_\ell-\sum_{m\neq\ell}A_{\ell m}x_m$ are computed using the shared vectors $x_m$. In this paper, we use the well-known iterative method GMRES ({\it Generalized Minimal RESidual})~\cite{saad86} as an inner iteration to approximate the solutions of the different splittings arising from the block Jacobi multisplitting of matrix $A$. The algorithm in Figure~\ref{alg:01} shows the main key points of our block Jacobi two-stage method executed by a cluster of processors. In line~\ref{solve}, the linear sub-system~(\ref{eq:03}) is solved in parallel using GMRES method where $\MIG$ and $\TOLG$ are the maximum number of inner iterations and the tolerance threshold for GMRES respectively. The convergence of the two-stage multisplitting methods, based on synchronous or asynchronous iterations, has been studied by many authors for example~\cite{Bru95,bahi07}.
 
 \begin{figure}[t]
 %\begin{algorithm}[t]
@@ -386,8 +386,6 @@ In addition, the following arguments are given to the programs at runtime:
         \item maximum number of restarts for the Arnorldi process in GMRES method,
        \item execution mode: synchronous or asynchronous.
 \end{itemize}
-\LZK{CE pourrais tu vérifier et confirmer les valeurs des éléments diag et off-diag de la matrice?}
-\RCE{oui, les valeurs de diag et off-diag donnees sont ok}
 
 It should also be noticed that both solvers have been executed with the Simgrid selector \texttt{-cfg=smpi/running\_power} which determines the computational power (here 19GFlops) of the simulator host machine.
 
@@ -496,7 +494,7 @@ and  between distant  clusters.  This parameter is application dependent.
 
 In the scope  of this paper, our  first objective is to analyze  when the Krylov
 Multisplitting  method   has  better  performance  than   the  classical  GMRES
-method. With a synchronous  iterative method, better performance mean a
+method. With a synchronous  iterative method, better performance means a
 smaller number of iterations and execution time before reaching the convergence.
 For a systematic study,  the experiments  should figure  out  that, for  various
 grid  parameters values, the simulator will confirm  the targeted outcomes,
@@ -521,7 +519,7 @@ architectures and scaling up the input matrix size}
  Input matrix size & N$_{x}$ x N$_{y}$ x N$_{z}$ =150 x 150 x 150\\ %\hline
  - &  N$_{x}$ x N$_{y}$ x N$_{z}$  =170 x 170 x 170    \\ \hline
  \end{tabular}
-\caption{Test conditions: Various grid configurations with the input matix size N$_{x}$=150 or N$_{x}$=170 \RC{je ne comprends pas la légende... Ca ne serait pas plutot Characteristics of cluster (mais il faudrait lui donner un nom)}}
+\caption{Test conditions: various grid configurations with the input matix size N$_{x}$=150 or N$_{x}$=170 \RC{N2 n'est pas défini..}\RC{Nx est défini, Ny? Nz?}}
 \label{tab:01}
 \end{center}
 \end{table}
@@ -529,8 +527,6 @@ architectures and scaling up the input matrix size}
 
 
 
-%\RCE{J'ai voulu mettre les tableaux des données mais je pense que c'est inutile et ça va surcharger}
-
 
 In this  section, we analyze the  performance of algorithms running  on various
 grid configurations  (2x16, 4x8, 4x16  and 8x8). First,  the results in  Figure~\ref{fig:01}
@@ -546,7 +542,7 @@ multisplitting method.
   \begin{center}
     \includegraphics[width=100mm]{cluster_x_nodes_nx_150_and_nx_170.pdf}
   \end{center}
-  \caption{Various grid configurations with the input matrix size N$_{x}$=150 and N$_{x}$=170}
+  \caption{Various grid configurations with the input matrix size N$_{x}$=150 and N$_{x}$=170\RC{idem}}
   \label{fig:01}
 \end{figure}
 
@@ -556,7 +552,7 @@ grid architectures, even  with the same number of processors  (for example, 2x16
 and  4x8). We  can  observ  the low  sensitivity  of  the Krylov multisplitting  method
 (compared with the classical GMRES) when scaling up the number of the processors
 in the  grid: in  average, the GMRES  (resp. Multisplitting)  algorithm performs
-$40\%$ better (resp. $48\%$) when running from 2x16=32 to 8x8=64 processors.
+$40\%$ better (resp. $48\%$) when running from 2x16=32 to 8x8=64 processors. \RC{pas très clair, c'est pas précis de dire qu'un algo perform mieux qu'un autre, selon quel critère?}
 
 \subsubsection{Running on two different inter-clusters network speeds \\}
 
@@ -569,16 +565,15 @@ $40\%$ better (resp. $48\%$) when running from 2x16=32 to 8x8=64 processors.
  - & N2 : bw=1Gbs-lat=5.10$^{-5}$ \\
  Input matrix size & N$_{x}$ x N$_{y}$ x N$_{z}$ =150 x 150 x 150\\ \hline
  \end{tabular}
-\caption{Test conditions: Grid 2x16 and 4x8 - Networks N1 vs N2}
+\caption{Test conditions: grid 2x16 and 4x8 with  networks N1 vs N2}
 \label{tab:02}
 \end{center}
 \end{table}
 
 These experiments  compare the  behavior of  the algorithms  running first  on a
-speed inter-cluster  network (N1) and  also on  a less performant  network (N2).
-Figure~\ref{fig:02} shows that end users will  gain to reduce the execution time
-for  both  algorithms  in using  a  grid  architecture  like  4x16 or  8x8:  the
-performance was increased  by a factor of  $2$. The results depict  also that when
+speed inter-cluster  network (N1) and  also on  a less performant  network (N2). \RC{Il faut définir cela avant...}
+Figure~\ref{fig:02} shows that end users will reduce the execution time
+for  both  algorithms when using  a  grid  architecture  like  4x16 or  8x8: the reduction is about $2$. The results depict  also that when
 the  network speed  drops down (variation of 12.5\%), the  difference between  the two Multisplitting algorithms execution times can reach more than 25\%.
 %\RC{c'est pas clair : la différence entre quoi et quoi?}
 %\DL{pas clair}
@@ -589,7 +584,7 @@ the  network speed  drops down (variation of 12.5\%), the  difference between  t
 \begin{figure} [ht!]
 \centering
 \includegraphics[width=100mm]{cluster_x_nodes_n1_x_n2.pdf}
-\caption{Grid 2x16 and 4x8 - Networks N1 vs N2}
+\caption{Grid 2x16 and 4x8 with networks N1 vs N2}
 \label{fig:02}
 \end{figure}
 %\end{wrapfigure}
@@ -605,7 +600,7 @@ the  network speed  drops down (variation of 12.5\%), the  difference between  t
  Network & N1 : bw=1Gbs \\ %\hline
  Input matrix size & N$_{x}$ x N$_{y}$ x N$_{z}$ =150 x 150 x 150\\ \hline
  \end{tabular}
-\caption{Test conditions: Network latency impacts}
+\caption{Test conditions: network latency impacts}
 \label{tab:03}
 \end{table}
 
@@ -619,15 +614,16 @@ the  network speed  drops down (variation of 12.5\%), the  difference between  t
 \end{figure}
 
 
-According to the results  of  Figure~\ref{fig:03}, a  degradation  of the  network
-latency from $8.10^{-6}$  to $6.10^{-5}$ implies an absolute  time increase of more
-than $75\%$  (resp. $82\%$) of the  execution for the classical  GMRES (resp. Krylov
-multisplitting)   algorithm.   In   addition,   it  appears   that  the   Krylov
-multisplitting method tolerates  more the network latency variation  with a less
-rate  increase  of  the  execution   time.   Consequently,  in  the  worst  case
-($lat=6.10^{-5 }$), the  execution time for GMRES is almost  the double than the
-time of the Krylov multisplitting, even  though, the performance was on the same
-order of magnitude with a latency of $8.10^{-6}$.
+According to  the results of  Figure~\ref{fig:03}, a degradation of  the network
+latency from  $8.10^{-6}$ to  $6.10^{-5}$ implies an  absolute time  increase of
+more  than $75\%$  (resp.  $82\%$)  of the  execution  for  the classical  GMRES
+(resp.  Krylov multisplitting)  algorithm.   In addition,  it  appears that  the
+Krylov multisplitting method tolerates more the network latency variation with a
+less  rate increase  of  the  execution time.\RC{Les  2  précédentes phrases  me
+  semblent en contradiction....}  Consequently, in the worst case ($lat=6.10^{-5
+}$), the  execution time for  GMRES is  almost the double  than the time  of the
+Krylov multisplitting,  even though, the  performance was  on the same  order of
+magnitude with a latency of $8.10^{-6}$.
 
 \subsubsection{Network bandwidth impacts on performance}
 \ \\
@@ -639,7 +635,7 @@ order of magnitude with a latency of $8.10^{-6}$.
  Network & N1 : bw=1Gbs - lat=5.10$^{-5}$ \\ %\hline
  Input matrix size & N$_{x}$ x N$_{y}$ x N$_{z}$ =150 x 150 x 150\\ \hline \\
  \end{tabular}
-\caption{Test conditions: Network bandwidth impacts}
+\caption{Test conditions: Network bandwidth impacts\RC{Qu'est ce qui varie ici? Il n'y a pas de variation dans le tableau}}
 \label{tab:04}
 \end{table}
 
@@ -685,9 +681,9 @@ In these experiments, the input matrix size  has been set from $N_{x} = N_{y}
 time for  both algorithms increases when  the input matrix size  also increases.
 But the interesting results are:
 \begin{enumerate}
-  \item the drastic increase ($10$ times) \RC{Je ne vois pas cela sur la figure}
-\RCE{Corrige} of the  number of  iterations needed  to reach the  convergence for  the classical
-GMRES algorithm when  the matrix size go beyond $N_{x}=150$;
+  \item the drastic increase ($10$ times)  of the number of iterations needed to
+    reach the convergence for the classical GMRES algorithm when the matrix size
+    go beyond $N_{x}=150$; \RC{C'est toujours pas clair... ok le nommbre d'itérations est 10 fois plus long mais la suite de la phrase ne veut rien dire}
 \item the  classical GMRES execution time  is almost the double  for $N_{x}=140$
   compared with the Krylov multisplitting method.
 \end{enumerate}