Efficient Methods for Out-of-Core Sparse Cholesky Factorization

We consider the problem of sparse Cholesky factorization with limited main memory. The goal is to efficiently factor matrices whose Cholesky factors essentially fill the available disk storage, using very little memory (as little as 16 Megabytes (MBytes)). This would enable very large industrial problems to be solved with workstations of very modest cost. We consider three candidate algorithms. Each is based on a partitioning of the matrix into panels. The first is a robust, out-of-core multifrontal method that keeps the factor, the stack, and the large frontal matrices on disk. The others are left-looking methods. We find that straightforward implementations of all of them suffer from excessive disk I/O for large problems that arise in interior-point algorithms for linear programming. We introduce several improvements to these simple out-of-core methods and find that a left-looking method that nevertheless uses the multifrontal algorithm for portions of the matrix (subtrees of the supernodal elimination tree whose multifrontal stack fits in memory) is very effective. With 32 Mbytes of main memory, it achieves over 77% of its in-core performance on all but one of our 12 test matrices (67% in that one case), even though the size of the factor is, in all cases, hundreds of millions or even billions of bytes.

[1]  Robert Schreiber,et al.  A New Implementation of Sparse Gaussian Elimination , 1982, TOMS.

[2]  Anoop Gupta,et al.  An Evaluation of Left-Looking, Right-Looking and Multifrontal Approaches to Sparse Cholesky Factorization on Hierarchical-Memory Machines , 1991, Int. J. High Speed Comput..

[3]  Klaus-Jürgen Bathe,et al.  Direct solution of large systems of linear equations , 1974 .

[4]  E. Rothberg,et al.  Parallel sparse Cholesky factorization algorithms for shared-memory multiprocessor systems , 1992 .

[5]  Bruce Hendrickson,et al.  Improving the Run Time and Quality of Nested Dissection Ordering , 1998, SIAM J. Sci. Comput..

[6]  Stanley C. Eisenstat,et al.  Software for Sparse Gaussian Elimination with Limited Core Storage. , 1978 .

[7]  Joseph W. H. Liu,et al.  Robust Ordering of Sparse Matrices using Multisection , 1998 .

[8]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[9]  Joseph W. H. Liu An adaptive general sparse out-of-core cholesky factorization scheme , 1987 .

[10]  Bruce Hendrickson,et al.  Sparse Matrix Ordering Methods for Interior Point Linear Programming , 1998, INFORMS J. Comput..

[11]  Bruce M. Irons,et al.  A frontal solution program for finite element analysis , 1970 .

[12]  John K. Reid,et al.  The Multifrontal Solution of Indefinite Sparse Symmetric Linear , 1983, TOMS.

[13]  John Richard Perry Secondary Storage Methods for Solving Symmetric, Positive Definite, Banded Linear Systems. , 1981 .

[14]  Andrew Harry Sherman,et al.  On the efficient solution of sparse systems of linear and nonlinear equations. , 1975 .

[15]  Barry W. Peyton,et al.  Block sparse Cholesky algorithms on advanced uniprocessor computers , 1991 .

[16]  Timothy A. Davis,et al.  A combined unifrontal/multifrontal method for unsymmetric sparse matrices , 1999, TOMS.

[17]  James Demmel,et al.  A Supernodal Approach to Sparse Partial Pivoting , 1999, SIAM J. Matrix Anal. Appl..

[18]  Roger Grimes,et al.  The influence of relaxed supernode partitions on the multifrontal method , 1989, TOMS.

[19]  Michael S. Warren,et al.  Parallel, Out-of-Core Methods for N-body Simulation , 1997, PPSC.

[20]  Joseph W. H. Liu,et al.  On the storage requirement in the out-of-core multifrontal method for sparse factorization , 1986, TOMS.