diff --git a/EuroPar/2-amg-prec.tex b/EuroPar/2-amg-prec.tex index 72de917..5e02fd1 100644 --- a/EuroPar/2-amg-prec.tex +++ b/EuroPar/2-amg-prec.tex @@ -1,4 +1,3 @@ - \section{Algebraic MultiGrid (AMG) Preconditioners}~\label{AMG} % MultiGrid methods are widely used as preconditioners of iterative @@ -28,7 +27,7 @@ \section{Algebraic MultiGrid (AMG) Preconditioners}~\label{AMG} Jacobi or Gauss-Seidel, to reduce highly oscillatory error components, while the coarse-grid correction corresponds to the solution of the resulting residual equation in an appropriately chosen coarse space -aimed at reducing the leftover error components. In the classical +aimed at reducing the leftover error components. In the original multigrid approach, the coarser grid and the interpolation operator for transfer the coarse-grid solution to the original (fine) grid are predefined by the geometry of the problem. The recursive application @@ -39,13 +38,13 @@ \section{Algebraic MultiGrid (AMG) Preconditioners}~\label{AMG} problem and relying only on system matrix entries. In this work we refer to an algebraic coarsening process based on aggregation of unknowns, where coarse-grid unknowns are agglomerates of the original -unknowns. In particular, AMG preconditioners available in MLD2P4 rely +ones. In particular, AMG preconditioners available in MLD2P4 rely on a decoupled version of \emph{the smoothed aggregation} algorithm described in~\cite{BrezinaVanek96,BrezinaVanek99}. This procedure is currently implemented on the host CPUs, therefore, for sake of space, we refer the reader to~\cite{mld2p4-2-guide} for more details on the algorithm and its parallel implementation. -Our main aim here is to describe all the main Linear Algebra +Our main aim here is to describe all the basic linear algebra operations needed for the application of the AMG preconditioner within an iterative linear solver, since their efficient implementation on GPUs was the main focus of this work. @@ -87,7 +86,7 @@ \section{Algebraic MultiGrid (AMG) Preconditioners}~\label{AMG} level $k$ for relaxation. Main computational kernels in the application of the preconditioner are then sparse matrix-vector multiplications and inversion of the -matrix operator $M^k$. In the simple case of Jacobi method, +matrix operator $M^k$. In the simple case of Jacobi method is $M^k=diag(A^k)$, therefore it corresponds to a highly parallel vector update operation. On the other hand, more robust iterative methods, such as the Gauss-Seidel method or incomplete factorizations, are