Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Computing rank‐revealing factorizations of matrices stored out‐of‐core

Journal Article · · Concurrency and Computation. Practice and Experience
DOI:https://doi.org/10.1002/cpe.7726· OSTI ID:2575873
 [1];  [2];  [3]
  1. Univ. of Colorado, Boulder, CO (United States)
  2. Univ. of Texas, Austin, TX (United States)
  3. Universitat Jaume I, Castellón (Spain)

This paper describes efficient algorithms for computing rank-revealing factorizations of matrices that are too large to fit in main memory (RAM), and must instead be stored on slow external memory devices such as disks (out-of-core or out-of-memory). Traditional algorithms for computing rank-revealing factorizations (such as the column pivoted QR factorization and the singular value decomposition) are very communication intensive as they require many vector-vector and matrix-vector operations, which become prohibitively expensive when data is not in RAM. Randomization allows to reformulate new methods so that large contiguous blocks of the matrix are processed in bulk. The paper describes two distinct methods. The first is a blocked version of column pivoted Householder QR, organized as a “left-looking” method to minimize the number of the expensive write operations. The second method results employs a UTV factorization. It is organized as an algorithm-by-blocks to overlap computations and I/O operations. As it incorporates power iterations, it is much better at revealing the numerical rank. Numerical experiments on several computers demonstrate that the new algorithms are almost as fast when processing data stored on slow memory devices as traditional algorithms are for data stored in RAM.

Research Organization:
Univ. of Texas, Austin, TX (United States)
Sponsoring Organization:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR); National Science Foundation (NSF); US Department of the Navy, Office of Naval Research (ONR); Spanish Ministry of Science and Innovation and the Research State Agency
Grant/Contract Number:
SC0022251
OSTI ID:
2575873
Journal Information:
Concurrency and Computation. Practice and Experience, Journal Name: Concurrency and Computation. Practice and Experience Journal Issue: 22 Vol. 35; ISSN 1532-0626; ISSN 1532-0634
Publisher:
WileyCopyright Statement
Country of Publication:
United States
Language:
English

References (34)

The design and implementation of the parallel out-of-core ScaLAPACK LU, QR, and Cholesky factorization routines journal December 2000
Scheduling dense linear algebra operations on multicore processors journal January 2010
Linear least squares solutions by householder transformations journal June 1965
The approximation of one matrix by another of lower rank journal September 1936
Using desktop computers to solve large-scale dense linear algebra problems journal February 2010
Rank revealing QR factorizations journal April 1987
The FLAME approach: From dense linear algebra algorithms to high-performance multi-accelerator implementations journal September 2012
On selecting a maximum volume sub-matrix of a matrix and related problems journal November 2009
Randomized numerical linear algebra: Foundations and algorithms journal May 2020
An updating algorithm for subspace tracking journal June 1992
Parallel out-of-core cholesky and QR factorizations with POOCLAPACK
  • Gunter, B. C.; Reiley, W. C.; van de Geijn, R. A.
  • IEEE International Symposium on Parallel and Distributed Processing, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001 https://doi.org/10.1109/IPDPS.2001.925180
conference January 2001
The singular value decomposition: Its computation and some applications journal April 1980
Calculating the Singular Values and Pseudo-Inverse of a Matrix
  • Golub, G.; Kahan, W.
  • Journal of the Society for Industrial and Applied Mathematics Series B Numerical Analysis, Vol. 2, Issue 2 https://doi.org/10.1137/0702016
journal January 1965
An Analysis of the Total Least Squares Problem journal December 1980
A Randomized Algorithm for Principal Component Analysis journal January 2010
Finding Structure with Randomness: Probabilistic Algorithms for Constructing Approximate Matrix Decompositions journal January 2011
Some Applications of the Rank Revealing QR Factorization journal May 1992
Efficient Algorithms for Computing a Strong Rank-Revealing QR Factorization journal July 1996
ScaLAPACK Users' Guide book January 1997
Solving Least Squares Problems book January 1995
An Algorithm for the Principal Component Analysis of Large Data Sets journal January 2011
Randomized QR with Column Pivoting journal January 2017
Householder QR Factorization With Randomization for Column Pivoting (HQRRP) journal January 2017
On Rank-Revealing Factorisations journal April 1994
A BLAS-3 Version of the QR Factorization with Column Pivoting journal September 1998
Representing linear algebra algorithms in code: the FLAME application program interfaces journal March 2005
Parallel out-of-core computation and updating of the QR factorization journal March 2005
On the Failure of Rank-Revealing QR Factorization Software -- A Case Study journal July 2008
Programming matrix algorithms-by-blocks for thread-level parallelism journal July 2009
A Runtime System for Programming Out-of-Core Matrix Algorithms-by-Tiles on Multithreaded Architectures journal August 2012
The design and implementation of SOLAR, a portable library for scalable out-of-core linear algebra computations
  • Toledo, Sivan; Gustavson, Fred G.
  • Proceedings of the fourth workshop on I/O in parallel and distributed systems part of the federated computing research conference - IOPADS '96 https://doi.org/10.1145/236017.236029
conference January 1996
randUTV: A Blocked Randomized Algorithm for Computing a Rank-Revealing UTV Factorization journal March 2019
Flame journal December 2001
Numerical Linear Algebra journal December 1966