MINIMIZING COMMUNICATION IN NUMERICAL LINEAR ALGEBRA

被引:133
作者
Ballard, Grey [1 ]
Demmel, James [2 ,3 ]
Holtz, Olga [2 ,4 ]
Schwartz, Oded [1 ]
机构
[1] Univ Calif Berkeley, Dept Comp Sci, Berkeley, CA 94720 USA
[2] Univ Calif Berkeley, Dept Math, Berkeley, CA 94720 USA
[3] Univ Calif Berkeley, CS Div, Berkeley, CA 94720 USA
[4] Tech Univ Berlin, Berlin, Germany
关键词
linear algebra algorithms; bandwidth; latency; communication-avoiding; lower bound; MULTISHIFT QR ALGORITHM; NESTED DISSECTION; PARALLEL MATRIX; FACTORIZATION; COMPLEXITY; RECURSION; BOUNDS; SERIAL; LEADS;
D O I
10.1137/090769156
中图分类号
O29 [应用数学];
学科分类号
070104 ;
摘要
In 1981 Hong and Kung proved a lower bound on the amount of communication (amount of data moved between a small, fast memory and large, slow memory) needed to perform dense, n-by-n matrix multiplication using the conventional O(n(3)) algorithm, where the input matrices were too large to fit in the small, fast memory. In 2004 Irony, Toledo, and Tiskin gave a new proof of this result and extended it to the parallel case (where communication means the amount of data moved between processors). In both cases the lower bound may be expressed as Omega(#arithmetic operations/root M), where M is the size of the fast memory (or local memory in the parallel case). Here we generalize these results to a much wider variety of algorithms, including LU factorization, Cholesky factorization, LDLT factorization, QR factorization, the Gram-Schmidt algorithm, and algorithms for eigenvalues and singular values, i.e., essentially all direct methods of linear algebra. The proof works for dense or sparse matrices and for sequential or parallel algorithms. In addition to lower bounds on the amount of data moved (bandwidth cost), we get lower bounds on the number of messages required to move it (latency cost). We extend our lower bound technique to compositions of linear algebra operations (like computing powers of a matrix) to decide whether it is enough to call a sequence of simpler optimal algorithms (like matrix multiplication) to minimize communication, or whether we can do better. We give examples of both. We also show how to extend our lower bounds to certain graph-theoretic problems. We point out recently designed algorithms that attain many of these lower bounds.
引用
收藏
页码:866 / 901
页数:36
相关论文
共 64 条
[1]   A three-dimensional approach to parallel matrix multiplication [J].
Agarwal, RC ;
Balle, SM ;
Gustavson, FG ;
Joshi, M ;
Palkar, P .
IBM JOURNAL OF RESEARCH AND DEVELOPMENT, 1995, 39 (05) :575-582
[2]   THE INPUT OUTPUT COMPLEXITY OF SORTING AND RELATED PROBLEMS [J].
AGGARWAL, A ;
VITTER, JS .
COMMUNICATIONS OF THE ACM, 1988, 31 (09) :1116-1127
[3]  
Ahmed N, 2000, LECT NOTES COMPUT SC, V1900, P368
[4]   A recursive formulation of Cholesky factorization of a matrix in packed storage [J].
Andersen, BS ;
Wasniewski, J ;
Gustavson, FG .
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2001, 27 (02) :214-244
[5]  
Anderson E., 1992, LAPACKS USERS GUIDE
[6]  
[Anonymous], P 23 ACM S IN PRESS
[7]  
[Anonymous], INT J SUPERCOMPUT AP
[8]  
[Anonymous], IMPLEMENTING COMMUNI
[9]  
[Anonymous], 1981, P 13 ANN ACM S THEOR, DOI DOI 10.1145/800076.802486
[10]  
[Anonymous], 191 LAPACK