PARALLEL SPARSE MATRIX-MATRIX MULTIPLICATION AND INDEXING: IMPLEMENTATION AND EXPERIMENTS

被引:123
作者
Buluc, Aydin [1 ]
Gilbert, John R. [2 ]
机构
[1] Univ Calif Berkeley, Lawrence Berkeley Natl Lab, Computat Res Div, Berkeley, CA 94720 USA
[2] Univ Calif Santa Barbara, Dept Comp Sci, Santa Barbara, CA 93106 USA
关键词
parallel computing; numerical linear algebra; sparse matrix-matrix multiplication; SpGEMM; sparse matrix indexing; sparse matrix assignment; two-dimensional data decomposition; hypersparsity; graph algorithms; sparse SUMMA; subgraph extraction; graph contraction; graph batch update; COMMUNICATION; DESIGN; BLAS;
D O I
10.1137/110848244
中图分类号
O29 [应用数学];
学科分类号
070104 ;
摘要
Generalized sparse matrix-matrix multiplication (or SpGEMM) is a key primitive for many high performance graph algorithms as well as for some linear solvers, such as algebraic multigrid. Here we show that SpGEMM also yields efficient algorithms for general sparse-matrix indexing in distributed memory, provided that the underlying SpGEMM implementation is sufficiently flexible and scalable. We demonstrate that our parallel SpGEMM methods, which use two-dimensional block data distributions with serial hypersparse kernels, are indeed highly flexible, scalable, and memory-efficient in the general case. This algorithm is the first to yield increasing speedup on an unbounded number of processors; our experiments show scaling up to thousands of processors in a variety of test scenarios.
引用
收藏
页码:C170 / C191
页数:22
相关论文
共 38 条
[1]  
Adams M., 1999, SUPERCOMPUTING 99, P27
[2]   MINIMIZING COMMUNICATION IN NUMERICAL LINEAR ALGEBRA [J].
Ballard, Grey ;
Demmel, James ;
Holtz, Olga ;
Schwartz, Oded .
SIAM JOURNAL ON MATRIX ANALYSIS AND APPLICATIONS, 2011, 32 (03) :866-901
[3]  
Briggs W.L., 2000, A Multigrid Tutorial, V2nd
[4]  
Buluc Aydin, 2008, 2008 37th International Conference on Parallel Processing (ICPP), P503, DOI 10.1109/ICPP.2008.45
[5]  
Buluc A., 2010, UCSBCS201010
[6]  
Buluc A, 2011, P 2011 INT C HIGH PE, p65:1, DOI 10.1145/2063384.2063471
[7]  
Buluç A, 2008, 2008 IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL & DISTRIBUTED PROCESSING, VOLS 1-8, P1876
[8]  
Buluç A, 2011, SOFTW ENVIRON TOOLS, V22, P315
[9]  
Buluç A, 2011, SOFTW ENVIRON TOOLS, V22, P287
[10]   The Combinatorial BLAS: design, implementation, and applications [J].
Buluc, Aydin ;
Gilbert, John R. .
INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 2011, 25 (04) :496-509