On the storage requirement in the out-of-core multifrontal method for sparse factorization
ACM Transactions on Mathematical Software (TOMS)
An adaptive general sparse out-of-core cholesky factorization scheme
SIAM Journal on Scientific and Statistical Computing
The role of elimination trees in sparse factorization
SIAM Journal on Matrix Analysis and Applications
Block sparse Cholesky algorithms on advanced uniprocessor computers
SIAM Journal on Scientific Computing
Modification of the minimum-degree algorithm by multiple elimination
ACM Transactions on Mathematical Software (TOMS)
Locality of Reference in LU Decomposition with Partial Pivoting
SIAM Journal on Matrix Analysis and Applications
External memory algorithms
A survey of out-of-core algorithms in numerical linear algebra
External memory algorithms
Efficient Methods for Out-of-Core Sparse Cholesky Factorization
SIAM Journal on Scientific Computing
Parallel I/O for high performance computing
Parallel I/O for high performance computing
I/O complexity: The red-blue pebble game
STOC '81 Proceedings of the thirteenth annual ACM symposium on Theory of computing
Hi-index | 0.00 |
We consider two problems related to I/O: First, find the minimum primary memory size required to factor a sparse, symmetric matrix when permitted to read and write the data exactly once. Second, find the minimum data traffic between core and external memory when permitted to read and write the data many times. These problems are likely to be intractable in general, but we prove upper and lower bounds on these quantities for several model problems with useful sparsity (i.e., whose computational graphs have small separators). We provide fast algorithms for computing these quantities through simulation for irregular problems. The choice of factorization algorithms (left-looking, right-looking, multifrontal), orderings (nested dissection or minimum degree), and blocking techniques (1- or 2- dimensional blocks) can change the memory size and traffic by orders of magnitude. Explicitly moving the data (files managed by the program) improves performance significantly over implicit data movement (pages managed by the operating system). Thus this work guides us in designing a software library that implements an external memory sparse solver.