next up previous contents
Next: Algebraic multi-level Schwarz preconditioners Up: Multi-level Schwarz preconditioners Previous: Multi-level Schwarz preconditioners   Contents


Background

Domain Decomposition (DD) preconditioners, coupled with Krylov iterative solvers, are widely used in the parallel solution of large and sparse linear systems. These preconditioners are based on the divide and conquer technique: the matrix to be preconditioned is divided into submatrices, a ``local'' linear system involving each submatrix is (approximately) solved, and the local solutions are used to build a preconditioner for the whole original matrix. This process often corresponds to dividing a physical domain associated to the original matrix into subdomains, e.g. in a PDE discretization, to (approximately) solving the subproblems corresponding to the subdomains, and to building an approximate solution of the original problem from the local solutions [8,9,24].

Additive Schwarz (AS) preconditioners are DD preconditioners using overlapping submatrices, i.e. with some common rows, to couple the local information related to the submatrices (see, e.g., [9,24]). The main motivation for choosing Additive Schwarz preconditioners is their intrinsic parallelism. A drawback of these preconditioners is that the number of iterations of the preconditioned solvers generally grows with the number of submatrices. This may be a serious limitation on parallel computers, since the number of submatrices usually matches the number of available processors.

Optimal convergence rates, i.e. a number of iterations independent of the number of submatrices, can be obtained by correcting the preconditioner using a suitable approximation of the original matrix in a coarse space, to globally couple the information related to the single submatrices. This process is called coarse-level correction and requires the solution of a linear system involving the coarse matrix. The combination of basic (one-level) Schwarz preconditioners with a coarse-level correction leads to the so-called two-level Schwarz preconditioners. In this context, the one-level preconditioner is often called `smoother'. The smoother and the coarse-level correction can be applied recursively to the coarse-level system, thus obtaining multi-level preconditioners. Different multi-level preconditioners are obtained by varying the choice of the smoother and of the coarse-level correction, and the way they are combined [24].

It is worth noting that optimal preconditioners do not necessarily correspond to minimum execution times. In order to obtain effective multi-level preconditioners, a tradeoff between optimality of convergence and the cost of building and applying the coarse-level corrections must be achieved. The choice of the number of levels also affects the performance of the preconditioners. One more goal is to get convergence rates as less sensitive as possible to variations in the matrix coefficients.

Two main approaches can be used to build coarse-level corrections. The geometric approach applies coarsening strategies based on the knowledge of some physical grid associated to the matrix and requires the user to define grid transfer operators from the fine to the coarse levels and vice versa. This may result difficult for complex geometries; furthermore, suitable one-level preconditioners may be required to get efficient interplay between fine and coarse levels, e.g. when matrices with highly varying coefficients are considered. The algebraic approach builds coarse-level corrections using only matrix information. It performs a fully automatic coarsening and enforces the interplay between the fine and coarse levels by suitably choosing the coarse space and the coarse-to-fine interpolation [26].

MLD2P4 uses a pure algebraic approach, based on the smoothed aggregation algorithm [2,28]. A decoupled version of this algorithm is implemented, where the smoothed aggregation is applied locally to each submatrix [27]. In the next subsection we provide a brief description of the multi-level Schwarz preconditioners and of the smoothed aggregation technique as implemented in MLD2P4. For further details the reader is referred to [3,4,5,10,24].


next up previous contents
Next: Algebraic multi-level Schwarz preconditioners Up: Multi-level Schwarz preconditioners Previous: Multi-level Schwarz preconditioners   Contents