Rateless Codes for Near-Perfect Load Balancing in Distributed Matrix-Vector Multiplication

被引:40
|
作者
Mallick, Ankur [1 ]
Chaudhari, Malhar [2 ]
Sheth, Utsav [3 ]
Palanikumar, Ganesh [4 ]
Joshi, Gauri [1 ]
机构
[1] Carnegie Mellon Univ, Pittsburgh, PA 15213 USA
[2] Oracle Corp, Redwood City, CA USA
[3] Automat Anywhere, San Jose, CA USA
[4] Apple Inc, Cupertino, CA 95014 USA
关键词
Erasure coded Computing; Rateless Fountain Codes; Large-scale Parallel Computing;
D O I
10.1145/3366706
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Large-scale machine learning and data mining applications require computer systems to perform massive matrix-vector and matrix-matrix multiplication operations that need to be parallelized across multiple nodes. The presence of straggling nodes - computing nodes that unpredictably slowdown or fail - is a major bottleneck in such distributed computations. Ideal load balancing strategies that dynamically allocate more tasks to faster nodes require knowledge or monitoring of node speeds as well as the ability to quickly move data. Recently proposed fixed-rate erasure coding strategies can handle unpredictable node slowdown, but they ignore partial work done by straggling nodes thus resulting in a lot of redundant computation. We propose a rateless fountain coding strategy that achieves the best of both worlds - we prove that its latency is asymptotically equal to ideal load balancing, and it performs asymptotically zero redundant computations. Our idea is to create linear combinations of them rows of the matrix and assign these encoded rows to different worker nodes. The original matrix-vector product can be decoded as soon as slightly more than m row-vector products are collectively finished by the nodes. We conduct experiments in three computing environments: local parallel computing, Amazon EC2, and Amazon Lambda, which show that rateless coding gives as much as 3x speed-up over uncoded schemes.
引用
收藏
页数:40
相关论文
共 50 条
  • [31] Matrix-Vector Multiplication in Adaptive Wavelet Methods
    Cerna, Dana
    Finek, Vaclav
    [J]. APPLICATIONS OF MATHEMATICS IN ENGINEERING AND ECONOMICS (AMEE'11): PROCEEDINGS OF THE 37TH INTERNATIONAL CONFERENCE, 2011, 1410
  • [32] Node aware sparse matrix-vector multiplication
    Bienz, Amanda
    Gropp, William D.
    Olson, Luke N.
    [J]. JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2019, 130 : 166 - 178
  • [33] AN EFFICIENT PARALLEL ALGORITHM FOR MATRIX-VECTOR MULTIPLICATION
    HENDRICKSON, B
    LELAND, R
    PLIMPTON, S
    [J]. INTERNATIONAL JOURNAL OF HIGH SPEED COMPUTING, 1995, 7 (01): : 73 - 88
  • [34] STRUCTURED SPARSE MATRIX-VECTOR MULTIPLICATION ON A MASPAR
    DEHN, T
    EIERMANN, M
    GIEBERMANN, K
    SPERLING, V
    [J]. ZEITSCHRIFT FUR ANGEWANDTE MATHEMATIK UND MECHANIK, 1994, 74 (06): : T534 - T538
  • [35] A Method of Zero/One Matrix-Vector Multiplication
    Yu, Li
    Liu, Xia
    Chen, Ang
    Li, Yuan-Xiang
    [J]. PROCEEDINGS OF FIRST INTERNATIONAL CONFERENCE OF MODELLING AND SIMULATION, VOL III: MODELLING AND SIMULATION IN ELECTRONICS, COMPUTING, AND BIO-MEDICINE, 2008, : 95 - 99
  • [36] GPU accelerated sparse matrix-vector multiplication and sparse matrix-transpose vector multiplication
    Tao, Yuan
    Deng, Yangdong
    Mu, Shuai
    Zhang, Zhenzhong
    Zhu, Mingfa
    Xiao, Limin
    Ruan, Li
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2015, 27 (14): : 3771 - 3789
  • [37] DENSE MATRIX-VECTOR MULTIPLICATION ON THE CUDA ARCHITECTURE
    Fujimoto, Noriyuki
    [J]. PARALLEL PROCESSING LETTERS, 2008, 18 (04) : 511 - 530
  • [38] Efficient dense matrix-vector multiplication on GPU
    He, Guixia
    Gao, Jiaquan
    Wang, Jun
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2018, 30 (19):
  • [39] Sparse matrix-vector multiplication -: Final solution?
    Simecek, Ivan
    Tvrdik, Pavel
    [J]. PARALLEL PROCESSING AND APPLIED MATHEMATICS, 2008, 4967 : 156 - 165
  • [40] MATRIX-VECTOR MULTIPLICATION BY USING PINHOLE HOLOGRAMS
    SONG, QW
    LEE, MC
    TALBOT, P
    CHENG, L
    [J]. APPLIED OPTICS, 1994, 33 (05): : 800 - 805