by Block Preconditioning, Edmond Chow, Michael A. Heroux
http://www-users.cs.umn.edu/~chow/papers/bpkit.ps
Add To MetaCart
Abstract:
General software for preconditioning the iterative solution of linear systems is greatly lagging behind the literature. This is partly because specific problems need specific matrix and preconditioner data structures in order to be solved efficiently; i.e., multiple implementations of a preconditioner with specialized data structures are required. This article presents a framework to support preconditioning with various, possibly user-defined, data structures for matrices that are partitioned into blocks. The main idea is to define data structures for the blocks, and an upper layer of software which uses these blocks transparently of their data structure. This transparency can be accomplished by using an object-oriented language. Thus various preconditioners, such as block relaxations and block incomplete factorizations, only need to be defined once, and will work with any block type. In addition, it is possible to transparently interchange various approximate or exact techniques for inverting pivot blocks, or solving systems whose coefficient matrices are diagonal blocks. This leads to a rich variety of preconditioners that can be selected. Operations with the blocks are performed with optimized libraries or fundamental data types. Comparisons with an optimized Fortran 77 code on both workstations and Cray supercomputers show that this framework can approach the efficiency of Fortran 77, as long as suitable block sizes and block types are chosen.
Citations
|
721
|
Iterative Methods for Sparse Linear Systems
– Saad
- 2003
|
|
617
|
A set of level 3 basic linear algebra subprograms
– Dongarra, Croz, et al.
- 1990
|
|
303
|
Iterative Solution methods
– Axelsson
- 1994
|
|
266
|
Sparse Matrix Test Problems
– Duff, Grimes, et al.
- 1989
|
|
216
|
SPARSKIT: a Basic Tool Kit for Sparse Matrix Computations
– Saad
- 1990
|
|
180
|
A flexible inner-outer preconditioned GMRES algorithm
– Saad
- 1993
|
|
90
|
Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods, 2nd Edition
– Barrett, Berry, et al.
- 1994
|
|
86
|
PETSc 2.0 users manual
– Balay, Gropp, et al.
- 1999
|
|
72
|
Block preconditioning for the conjugate gradient method
– Concus, Golub, et al.
- 1985
|
|
71
|
Approximate inverse preconditioners via sparse-sparse iterations
– Chow
- 1998
|
|
54
|
Efficient implementation of a class of preconditioned conjugate gradient methods
– Eisenstat
- 1981
|
|
46
|
ILUT: a dual threshold incomplete ILU factorization
– Saad
- 1994
|
|
37
|
Approximate inverse techniques for block-partitioned matrices
– CHOW, SAAD
- 1997
|
|
35
|
A Sparse Matrix Library in C++ for High Performance Architectures
– Dongarra, Lumsdaine, et al.
- 1994
|
|
28
|
An object oriented design for high performance linear algebra on distributed memory architectures
– Dongarra, Pozo, et al.
- 1993
|
|
25
|
BlockSolve95 users manual: Scalable library software for the parallel solution of sparse linear systems
– Jones, Plassmann
- 1995
|
|
22
|
LAPACK: A portable linear algebra library for supercomputers
– Demmel
- 1989
|
|
20
|
T.Chan , ParPre: A parallel preconditioners Package reference manual for version 2.0.21, revision 1, http://www.math.ucla.edu/~eijkhout/reports/parpre_manual/manual.html
– Eijkhout
|
|
18
|
Object-oriented design of preconditioned iterative methods in Diffpack
– Bruaset, Langtangen
- 1997
|
|
17
|
On a family of two-level preconditionings of the incomplete block factorization type
– Kolotilina, Yeremin
|
|
16
|
A revised proposal for a sparse BLAS toolkit
– Carney, Heroux, et al.
- 1994
|
|
16
|
NIST Sparse BLAS: User’s Guide
– Remington, Pozo
- 1996
|
|
15
|
Robust linear and nonlinear strategies for solution of the transonic Euler equations
– JIANG, FORSYTH
- 1995
|
|
8
|
On some versions of incomplete block-matrix factorization iterative methods
– Axelsson, Brinkkemper, et al.
- 1984
|
|
8
|
An approximate factorization procedure based on the block Cholesky factorization and its use with the conjugate gradient method
– Underwood
- 1976
|
|
6
|
Fortran 90: An Entry to Object-Oriented Programming for the Solution of Partial Differential Equations
– Machiels, Deville
- 1997
|
|
4
|
Block preconditioning toolkit
– Chow, Heroux
- 1996
|
|
3
|
Performance issues for iterative solvers in device simulation
– Fan, Forsyth, et al.
- 1996
|
|
3
|
The C++ Programming Language (2
– Stroustrup
- 1991
|
|
2
|
ISIS++: Iterative scalable implicit solver (in C
– Clay, Mish, et al.
- 1997
|
|
2
|
Eremin, Block SSOR preconditionings for high-order 3D FE systems, Linear Algebra and its Applications
– Kaporin, Kolotilina, et al.
- 1991
|
|
2
|
BKAT: An object-oriented block Krylov accelerator toolkit. Presentation at Cray Research
– Wu, Li
- 1995
|