mirror of
https://github.com/sfilippone/amg4psblas.git
synced 2026-10-16 10:52:09 +00:00
Fix from Mac coding to Unix coding.
This commit is contained in:
+63
-5
@@ -54,17 +54,75 @@ original version by: Nikos Drakos, CBLU, University of Leeds
|
||||
<H1><A NAME="SECTION00060000000000000000"></A><A NAME="sec:background"></A>
|
||||
<BR>
|
||||
Multigrid Background
|
||||
</H1><FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">␍␍␍Multigrid preconditioners, coupled with Krylov iterative␍solvers, are widely used in the parallel solution of large and sparse linear systems,␍because of their optimality in the solution of linear systems arising from the␍discretization of scalar elliptic Partial Differential Equations (PDEs) on regular grids.␍Optimality, also known as algorithmic scalability, is the property ␍of having a computational cost per iteration that depends linearly on␍the problem size, and a convergence rate that is independent of the problem size.␍␍Multigrid preconditioners are based on a recursive application of a two-grid process␍consisting of smoother iterations and a coarse-space (or coarse-level) correction.␍The smoothers may be either basic iterative methods, such as the Jacobi and Gauss-Seidel ones,␍or more complex subspace-correction methods, such as the Schwarz ones.␍The coarse-space correction consists of solving, in an appropriately chosen␍coarse space, the residual equation associated with the approximate solution computed␍by the smoother, and of using the solution of this equation to correct the␍previous approximation. The transfer of information between the original␍(fine) space and the coarse one is performed by using suitable restriction and␍prolongation operators. The construction of the coarse space and the corresponding␍transfer operators is carried out by applying a so-called coarsening algorithm to the system␍matrix. Two main approaches can be used to perform coarsening: the geometric approach,␍which exploits the knowledge of some physical grid associated with the matrix␍and requires the user to define transfer operators from the fine␍to the coarse level and vice versa, and the algebraic approach, which builds␍the coarse-space correction and the associate transfer operators using only matrix␍information. The first approach may be difficult when the system comes from␍discretizations on complex geometries;␍furthermore, ad hoc one-level smoothers may be required to get an efficient␍interplay between fine and coarse levels, e.g., when matrices with highly varying coefficients␍are considered. The second approach performs a fully automatic coarsening and enforces the␍interplay between fine and coarse level by suitably choosing the coarse space and␍the coarse-to-fine interpolation (see, e.g., [<A
|
||||
</H1><FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">
|
||||
|
||||
</FONT></FONT></FONT>
|
||||
<P>
|
||||
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">Multigrid preconditioners, coupled with Krylov iterative
|
||||
solvers, are widely used in the parallel solution of large and sparse linear systems,
|
||||
because of their optimality in the solution of linear systems arising from the
|
||||
discretization of scalar elliptic Partial Differential Equations (PDEs) on regular grids.
|
||||
Optimality, also known as algorithmic scalability, is the property
|
||||
of having a computational cost per iteration that depends linearly on
|
||||
the problem size, and a convergence rate that is independent of the problem size.
|
||||
</FONT></FONT></FONT>
|
||||
<P>
|
||||
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">Multigrid preconditioners are based on a recursive application of a two-grid process
|
||||
consisting of smoother iterations and a coarse-space (or coarse-level) correction.
|
||||
The smoothers may be either basic iterative methods, such as the Jacobi and Gauss-Seidel ones,
|
||||
or more complex subspace-correction methods, such as the Schwarz ones.
|
||||
The coarse-space correction consists of solving, in an appropriately chosen
|
||||
coarse space, the residual equation associated with the approximate solution computed
|
||||
by the smoother, and of using the solution of this equation to correct the
|
||||
previous approximation. The transfer of information between the original
|
||||
(fine) space and the coarse one is performed by using suitable restriction and
|
||||
prolongation operators. The construction of the coarse space and the corresponding
|
||||
transfer operators is carried out by applying a so-called coarsening algorithm to the system
|
||||
matrix. Two main approaches can be used to perform coarsening: the geometric approach,
|
||||
which exploits the knowledge of some physical grid associated with the matrix
|
||||
and requires the user to define transfer operators from the fine
|
||||
to the coarse level and vice versa, and the algebraic approach, which builds
|
||||
the coarse-space correction and the associate transfer operators using only matrix
|
||||
information. The first approach may be difficult when the system comes from
|
||||
discretizations on complex geometries;
|
||||
furthermore, ad hoc one-level smoothers may be required to get an efficient
|
||||
interplay between fine and coarse levels, e.g., when matrices with highly varying coefficients
|
||||
are considered. The second approach performs a fully automatic coarsening and enforces the
|
||||
interplay between fine and coarse level by suitably choosing the coarse space and
|
||||
the coarse-to-fine interpolation (see, e.g., [<A
|
||||
HREF="node29.html#Briggs2000">3</A>,<A
|
||||
HREF="node29.html#Stuben_01">23</A>,<A
|
||||
HREF="node29.html#dd2_96">21</A>] for details.)␍␍MLD2P4 uses a pure algebraic approach, based on the smoothed ␍aggregation algorithm [<A
|
||||
HREF="node29.html#dd2_96">21</A>] for details.)
|
||||
</FONT></FONT></FONT>
|
||||
<P>
|
||||
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">MLD2P4 uses a pure algebraic approach, based on the smoothed
|
||||
aggregation algorithm [<A
|
||||
HREF="node29.html#BREZINA_VANEK">2</A>,<A
|
||||
HREF="node29.html#VANEK_MANDEL_BREZINA">25</A>],␍for building the sequence of coarse matrices and transfer operators,␍starting from the original one.␍A decoupled version of this algorithm is implemented, where the smoothed␍aggregation is applied locally to each submatrix [<A
|
||||
HREF="node29.html#TUMINARO_TONG">24</A>].␍A brief description of the AMG preconditioners implemented in MLD2P4 is given in ␍Sections <A HREF="node12.html#sec:multilevel">4.1</A>-<A HREF="node14.html#sec:smoothers">4.3</A>. For further details the reader␍is referred to [<A
|
||||
HREF="node29.html#VANEK_MANDEL_BREZINA">25</A>],
|
||||
for building the sequence of coarse matrices and transfer operators,
|
||||
starting from the original one.
|
||||
A decoupled version of this algorithm is implemented, where the smoothed
|
||||
aggregation is applied locally to each submatrix [<A
|
||||
HREF="node29.html#TUMINARO_TONG">24</A>].
|
||||
A brief description of the AMG preconditioners implemented in MLD2P4 is given in
|
||||
Sections <A HREF="node12.html#sec:multilevel">4.1</A>-<A HREF="node14.html#sec:smoothers">4.3</A>. For further details the reader
|
||||
is referred to [<A
|
||||
HREF="node29.html#para_04">4</A>,<A
|
||||
HREF="node29.html#aaecc_07">5</A>,<A
|
||||
HREF="node29.html#apnum_07">7</A>,<A
|
||||
HREF="node29.html#MLD2P4_TOMS">8</A>].␍␍We note that optimal multigrid preconditioners do not necessarily correspond␍to minimum execution times in a parallel setting. Indeed, to obtain effective parallel␍multigrid preconditioners, a tradeoff between the optimality and the cost of building and␍applying the smoothers and the coarse-space corrections must be achieved. Effective␍parallel preconditioners require algorithmic scalability to be coupled with implementation␍scalability, i.e., a computational cost per iteration which remains (almost) constant as␍the number of parallel processors increases.␍␍␍</FONT></FONT></FONT>
|
||||
HREF="node29.html#MLD2P4_TOMS">8</A>].
|
||||
</FONT></FONT></FONT>
|
||||
<P>
|
||||
<FONT SIZE="+1"><FONT SIZE="+1"><FONT SIZE="+1">We note that optimal multigrid preconditioners do not necessarily correspond
|
||||
to minimum execution times in a parallel setting. Indeed, to obtain effective parallel
|
||||
multigrid preconditioners, a tradeoff between the optimality and the cost of building and
|
||||
applying the smoothers and the coarse-space corrections must be achieved. Effective
|
||||
parallel preconditioners require algorithmic scalability to be coupled with implementation
|
||||
scalability, i.e., a computational cost per iteration which remains (almost) constant as
|
||||
the number of parallel processors increases.
|
||||
</FONT></FONT></FONT>
|
||||
<P>
|
||||
<FONT SIZE="+1"><FONT SIZE="+1"></FONT></FONT>
|
||||
<BR><HR>
|
||||
<!--Table of Child-Links-->
|
||||
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
|
||||
|
||||
Reference in New Issue
Block a user