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

Private GIT Repository
changed the bibliography style
[GMRES2stage.git] / paper.tex
index b755e4c790f3f9e25badf91047fa3d52edd75708..fc64064454a2836fe4a5c7d7b90eb851ed760484 100644 (file)
--- a/paper.tex
+++ b/paper.tex
 %
 % paper title
 % can use linebreaks \\ within to get better formatting as desired
-\title{A Krylov two-stage algorithm to solve large sparse linear systems}
+\title{TSARM: A Two-Stage Algorithm with least-square Residual Minimization to solve large sparse linear systems}
 %où
 %\title{A two-stage algorithm with error minimization to solve large sparse linear systems}
 %où
 %\title{???}
 
 
+
+
+
 % author names and affiliations
 % use a multiple column layout for up to two different
 % affiliations
@@ -423,7 +426,16 @@ Email: lilia.ziane@inria.fr}
 
 
 \begin{abstract}
-%The abstract goes here. DO NOT USE SPECIAL CHARACTERS, SYMBOLS, OR MATH IN YOUR TITLE OR ABSTRACT.
+In  this paper  we propose  a  two stage  iterative method  which increases  the
+convergence of Krylov iterative methods,  typically those of GMRES variants. The
+principle of  our approach  is to  build an external  iteration over  the Krylov
+method  and to  save  the current  residual  frequently (for  example, for  each
+restart of GMRES). Then after a given number of outer iterations, a minimization
+step is applied on the matrix composed of the save residuals in order to compute
+a  better solution and  make a  new iteration  if necessary.  We prove  that our
+method  has the  same  convergence property  than  the inner  method used.  Some
+experiments using up  to 16,394 cores show that compared  to GMRES our algorithm
+can be around 7 times faster.
 \end{abstract}
 
 \begin{IEEEkeywords}
@@ -534,12 +546,14 @@ Iterative Krylov methods; sparse linear systems; error minimization; PETSc; %à
 % no \IEEEPARstart
 % You must have at least 2 lines in the paragraph with the drop letter
 % (should never be an issue)
-Iterative  methods are become  more attractive  than direct  ones to  solve very
-large sparse linear  systems. They are more effective in  a parallel context and
-require less memory  and arithmetic operations than direct  methods. A number of
-iterative methods are proposed and adapted by many researchers and the increased
-need for solving  very large sparse linear systems  triggered the development of
-efficient iterative techniques suitable for the parallel processing.
+
+Iterative methods  became more attractive than  direct ones to  solve very large
+sparse  linear systems.  Iterative  methods  are more  effecient  in a  parallel
+context,  with  thousands  of  cores,  and  require  less  memory  and  arithmetic
+operations than direct  methods. A number of iterative  methods are proposed and
+adapted by many researchers and the increased need for solving very large sparse
+linear  systems  triggered the  development  of  efficient iterative  techniques
+suitable for the parallel processing.
 
 Most of the successful iterative methods currently available are based on Krylov
 subspaces which  consist in forming a  basis of a sequence  of successive matrix
@@ -561,15 +575,18 @@ large clusters.
 In this  paper we propose a  two-stage algorithm based on  two nested iterations
 called inner-outer  iterations.  This algorithm  consists in solving  the sparse
 linear system iteratively  with a small number of  inner iterations and restarts
-the outer step with a new solution minimizing some error functions over a Krylov
-subspace. This algorithm is iterative  and easy to parallelize on large clusters
-and the minimization technique improves its convergence and performances.
+the outer  step with a  new solution minimizing  some error functions  over some
+previous residuals. This algorithm is iterative and easy to parallelize on large
+clusters   and  the   minimization  technique   improves  its   convergence  and
+performances.
 
 The present paper is organized  as follows. In Section~\ref{sec:02} some related
-works are presented. Section~\ref{sec:03} presents our two-stage algorithm based
-on   Krylov  subspace   iteration  methods.   Section~\ref{sec:04}   shows  some
+works are presented. Section~\ref{sec:03} presents our two-stage algorithm using
+a  least-square  residual  minimization.   Section~\ref{sec:04}  describes  some
+convergence   results   on  this   method.    Section~\ref{sec:05}  shows   some
 experimental results obtained on large  clusters of our algorithm using routines
-of PETSc toolkit.
+of  PETSc  toolkit.  Finally   Section~\ref{sec:06}  concludes  and  gives  some
+perspectives.
 %%%*********************************************************
 %%%*********************************************************
 
@@ -596,11 +613,10 @@ $b\in\mathbb{R}^n$ is  the right-hand side.  The algorithm is implemented  as an
 inner-outer iteration  solver based  on iterative Krylov  methods. The  main key
 points of our solver are given in Algorithm~\ref{algo:01}.
 
-In order to accelerate the convergence, the outer iteration is implemented as an
-iterative  Krylov method  which minimizes  some  error functions  over a  Krylov
-subspace~\cite{saad96}. At  each iteration, the  sparse linear system  $Ax=b$ is
+In order to accelerate the convergence, the outer iteration applies a least-square minimization on the residuals computed by the inner   some  error functions  over a  Krylov
+subspace~\cite{Saad2003}. At  each iteration, the  sparse linear system  $Ax=b$ is
 solved   iteratively    with   an   iterative   method,    for   example   GMRES
-method~\cite{saad86} or  some of its variants,  and the Krylov  subspace that we
+method~\cite{Saad86} or  some of its variants,  and the Krylov  subspace that we
 used is spanned by a basis  $S$ composed of successive solutions issued from the
 inner iteration
 \begin{equation}
@@ -623,7 +639,7 @@ which is associated with the least-squares problem
 such  that $R=AS$  is a  dense rectangular  matrix in  $\mathbb{R}^{n\times s}$,
 $s\ll n$,  and $R^T$ denotes  the transpose of  matrix $R$. We use  an iterative
 method   to  solve   the  least-squares   problem~(\ref{eq:01})  such   as  CGLS
-~\cite{hestenes52}  or LSQR~\cite{paige82}  which  are more  appropriate than  a
+~\cite{Hestenes52}  or LSQR~\cite{Paige82}  which  are more  appropriate than  a
 direct method in the parallel context.
 
 \begin{algorithm}[t]
@@ -652,12 +668,13 @@ reused with the new values of the residuals.
 %%%*********************************************************
 %%%*********************************************************
 
-
+\section{Convergence results}
+\label{sec:04}
 
 %%%*********************************************************
 %%%*********************************************************
 \section{Experiments using petsc}
-\label{sec:04}
+\label{sec:05}
 
 
 In order to see the influence of our algorithm with only one processor, we first
@@ -666,7 +683,7 @@ table~\ref{tab:01},  we  show  the  matrices  we  have used  and  some  of  them
 characteristics. For all  the matrices, the name, the field,  the number of rows
 and the number of nonzero elements is given.
 
-\begin{table}
+\begin{table*}
 \begin{center}
 \begin{tabular}{|c|c|r|r|r|} 
 \hline
@@ -683,7 +700,7 @@ torso3             & 2D/3D problem & 259,156 & 4,429,042 \\
 \caption{Main characteristics of the sparse matrices chosen from the Davis collection}
 \label{tab:01}
 \end{center}
-\end{table}
+\end{table*}
 
 The following  parameters have been chosen  for our experiments.   As by default
 the restart  of GMRES is performed every  30 iterations, we have  chosen to stop
@@ -762,7 +779,28 @@ Larger experiments ....
 \end{table*}
 
 
+\begin{table*}
+\begin{center}
+\begin{tabular}{|r|r|r|r|r|r|r|r|r|} 
+\hline
+
+  nb. cores & threshold   & \multicolumn{2}{c|}{gmres variant} & \multicolumn{2}{c|}{2 stage CGLS} &  \multicolumn{2}{c|}{2 stage LSQR} & best gain \\ 
+\cline{3-8}
+             &                       & Time  & \# Iter.  & Time  & \# Iter. & Time  & \# Iter. & \\\hline \hline
+  2,048      & 8e-5                  & 108.88 & 16,560  & 23.06  &  3,630  & 22.79  & 3,630   & 4.77 \\
+  2,048      & 6e-5                  & 194.01 & 30,270  & 35.50  &  5,430  & 27.74  & 4,350   & 6.99 \\
+  4,096      & 7e-5                  & 160.59 & 22,530  & 35.15  &  5,130  & 29.21  & 4,350   & 5.49 \\
+  4,096      & 6e-5                  & 249.27 & 35,520  & 52.13  &  7,950  & 39.24  & 5,790   & 6.35 \\
+  8,192      & 6e-5                  & 149.54 & 17,280  & 28.68  &  3,810  & 29.05  & 3,990  & 5.21 \\
+  8,192      & 5e-5                  & 792.11 & 109,590 & 76.83  &  10,470  & 65.20  & 9,030  & 12.14 \\
+  16,384     & 4e-5                  & 718.61 & 86,400 & 98.98  &  10,830  & 131.86  & 14,790  & 7.26 \\
+\hline
 
+\end{tabular}
+\caption{Comparison of FGMRES  and 2 stage FGMRES algorithms for ex54 of Petsc (both with the MG preconditioner) with 25000 components per core on Curie (restart=30, s=12),  time is expressed in seconds.}
+\label{tab:04}
+\end{center}
+\end{table*}
 %%%*********************************************************
 %%%*********************************************************
 
@@ -771,12 +809,18 @@ Larger experiments ....
 %%%*********************************************************
 %%%*********************************************************
 \section{Conclusion}
-\label{sec:05}
+\label{sec:06}
 %The conclusion goes here. this is more of the conclusion
 %%%*********************************************************
 %%%*********************************************************
 
 
+future plan : \\
+- study other kinds of matrices, problems, inner solvers\\
+- adaptative number of outer iterations to minimize\\
+- other methods to minimize the residuals?\\
+- implement our solver inside PETSc
+
 
 % conference papers do not normally have an appendix
 
@@ -807,23 +851,23 @@ Curie and Juqueen respectively based in France and Germany.
 % http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/
 % The IEEEtran BibTeX style support page is at:
 % http://www.michaelshell.org/tex/ieeetran/bibtex/
-%\bibliographystyle{IEEEtran}
+\bibliographystyle{IEEEtran}
 % argument is your BibTeX string definitions and bibliography database(s)
-%\bibliography{IEEEabrv,../bib/paper}
+\bibliography{biblio}
 %
 % <OR> manually copy in the resultant .bbl file
 % set second argument of \begin to the number of references
 % (used to reserve space for the reference number labels box)
-\begin{thebibliography}{1}
+%% \begin{thebibliography}{1}
 
-\bibitem{saad86} Y.~Saad and M.~H.~Schultz, \emph{GMRES: A Generalized Minimal Residual Algorithm for Solving Nonsymmetric Linear Systems}, SIAM Journal on Scientific and Statistical Computing, 7(3):856--869, 1986.
+%% \bibitem{saad86} Y.~Saad and M.~H.~Schultz, \emph{GMRES: A Generalized Minimal Residual Algorithm for Solving Nonsymmetric Linear Systems}, SIAM Journal on Scientific and Statistical Computing, 7(3):856--869, 1986.
 
-\bibitem{saad96} Y.~Saad, \emph{Iterative Methods for Sparse Linear Systems}, PWS Publishing, New York, 1996.
+%% \bibitem{saad96} Y.~Saad, \emph{Iterative Methods for Sparse Linear Systems}, PWS Publishing, New York, 1996.
 
-\bibitem{hestenes52} M.~R.~Hestenes and E.~Stiefel, \emph{Methods of conjugate gradients for solving linear system}, Journal of Research of National Bureau of Standards, B49:409--436, 1952.
+%% \bibitem{hestenes52} M.~R.~Hestenes and E.~Stiefel, \emph{Methods of conjugate gradients for solving linear system}, Journal of Research of National Bureau of Standards, B49:409--436, 1952.
 
-\bibitem{paige82} C.~C.~Paige and A.~M.~Saunders, \emph{LSQR: An Algorithm for Sparse Linear Equations and Sparse Least Squares}, ACM Trans. Math. Softw. 8(1):43--71, 1982.
-\end{thebibliography}
+%% \bibitem{paige82} C.~C.~Paige and A.~M.~Saunders, \emph{LSQR: An Algorithm for Sparse Linear Equations and Sparse Least Squares}, ACM Trans. Math. Softw. 8(1):43--71, 1982.
+%% \end{thebibliography}