Abstract
ILU(k) is a commonly used preconditioner for iterative linear solvers for sparse, non-symmetric systems. It is often preferred for the sake of its stability. We present TPILU(k), the first efficiently parallelized ILU(k) preconditioner that maintains this important stability property. Even better, TPILU(k) preconditioning produces an answer that is bit-compatible with the sequential ILU(k) preconditioning. In terms of performance, the TPILU(k) preconditioning is shown to run faster whenever more cores are made available to it — while continuing to be as stable as sequential ILU(k). This is in contrast to some competing methods that may become unstable if the degree of thread parallelism is raised too far. Where Block Jacobi ILU(k) fails in an application, it can be replaced by TPILU(k) in order to maintain good performance, while also achieving full stability. As a further optimization, TPILU(k) offers an optional level-based incomplete inverse method as a fast approximation for the original ILU(k) preconditioned matrix. Although this enhancement is not bit-compatible with classical ILU(k), it is bit-compatible with the output from the single-threaded version of the same algorithm. In experiments on a 16-core computer, the enhanced TPILU(k)-based iterative linear solver performed up to 9 times faster. As we approach an era of many-core computing, the ability to efficiently take advantage of many cores will become ever more important.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Gustafsson, I.: A Class of First Order Factorization Methods. BIT Numerical Mathematics, Springer Netherlands 18(2), 142–156 (1978)
Watts III, J.W.: A Conjugate Gradient-Truncated Direct Method for the Iterative Solution of the Reservoir Simulation Pressure Equation. SPE Journal 21(3), 345–353 (1981)
Hysom, D., Pothen, A.: A Scalable Parallel Algorithm for Incomplete Factor Preconditioning. SIAM J. Sci. Comput 22, 2194–2215 (2000)
Hysom, D., Pothen, A.: Efficient Parallel Computation of ILU(k) Preconditioners. In: Supercomputing 1999 (1999)
Saad, Y.: Iterative Methods for Sparse Linear Systems, 2nd edn. SIAM, Philadelphia (2003)
Bollhöfer, M., Saad, Y.: On the Relations between ILUs and Factored Approximate Inverses. SIAM J. Matrix Anal. Appl. 24(1), 219–237 (2002)
Dong, X., Cooperman, G., Apostolakis, J.: Multithreaded Geant4: Semi-Automatic Transformation into Scalable Thread-Parallel Software. In: Euro-Par 2010 (2010)
Saad, Y., van der Vorst, H.A.: Iterative Solution of Linear Systems in the 20th Century. J. Comput. Appl. Math. 123(1-2), 1–33 (2000)
Cooperman, G.: Practical Task-Oriented Parallelism for Gaussian Elimination in Distributed Memory. Linear Algebra and Its Applications 275-276, 107–120 (1998)
hypre: High Performance Preconditioners. User’s Manual, version 2.6.0b, https://computation.llnl.gov/casc/hypre/download/hypre-2.6.0b_usr_manual.pdf
Matrix Market.: Driven Cavity from the SPARSKIT Collection, http://math.nist.gov/MatrixMarket/data/SPARSKIT/drivcav/drivcav.html
UF Sparse Matrix Collection, http://www.cise.ufl.edu/research/sparse/matrices/
Anderson, E.: Parallel Implementation of Preconditioned Conjugate Gradient Methods for Solving Sparse Systems of Linear Equations. Master’s Thesis, Center for Supercomputing Research and Development, University of Illinois (1988)
Heroux, M.A., Vu, P., Yang, C.: A Parallel Preconditioned Conjugate Gradient Package for Solving Sparse Linear Systems on a Cray Y-MP. Appl. Num. Math. 8, 93–115 (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dong, X., Cooperman, G. (2011). A Bit-Compatible Parallelization for ILU(k) Preconditioning. In: Jeannot, E., Namyst, R., Roman, J. (eds) Euro-Par 2011 Parallel Processing. Euro-Par 2011. Lecture Notes in Computer Science, vol 6853. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23397-5_8
Download citation
DOI: https://doi.org/10.1007/978-3-642-23397-5_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-23396-8
Online ISBN: 978-3-642-23397-5
eBook Packages: Computer ScienceComputer Science (R0)