编码分布式矩阵乘法(Coded Distributed Matrix Multiplication, CDMM)问题简单介绍
利用编码技术缓解分布式计算系统的掉队效应
许多现代分布式计算框架都会遇到大规模分布式矩阵乘法问题,即计算两个大规模矩阵和
的乘积,如MapReduce、Spark。由于分布式计算系统会出现的无法预测的时延,主节点(master node)必须等到最慢的工作节点(worker node)完成计算才能恢复计算结果,这种现象称作掉队效应(straggler effect)。实验证明在Amazon EC2上,等待掉队者(stragglers)完成计算的时间比等待普通节点完成计算的时间长5到8倍。编码分布式矩阵乘法(Coded Distributed Matrix Multiplication, CDMM)通过引入冗余,即用纠删码对矩阵A和B编码,使得主节点在收到一定数量(而非全部)工作节点的计算结果后就能解码出
,从而缓和掉队效应。
CDMM的问题描述包括三部分。假设分布式计算系统包括1个主节点和N个工作节点。
1.编码(Encoding):主节点按照函数集和
将输入矩阵
和
编码为
和
。
2.分发和计算:主节点将发送给工作节点i,工作节点计算
并将结果返回给主节点。
3.解码(Decoding):主节点收到R个工作节点的计算结果后,使用选择函数集中节点集合对应的解码函数,解码出
。R称作恢复阈值(recovery threshold)。最优恢复阈值定义为
。
例1:先把矩阵划分为
,
把矩阵划分为
,
则可表示为
,
令
,
,
则
,
它可以看作degree为9的多项式
在点的估值,因此用户最少只需要得到
在10个点的估值就可以使用多项式插值得到
的系数,即
的4个分块,所以该方案的恢复阈值为10. [1]中的方案的恢复阈值为9,感兴趣可自行参阅.
此外,[1]中证明如果矩阵被划分为块,矩阵被划分为块,采用线性编码方案的恢复阈值满足,并提出了达到该下界的方案,称作entangled polynomial code.
[1] Q. Yu, M. A. Maddah-Ali, and A. S. Avestimehr, “Straggler mitigation in distributed matrix multiplication: Fundamental limits and optimal coding,” IEEE Trans. Inf. Theory, vol. 66, no. 3, pp. 1920–1933, Mar. 2020.
更多推荐
所有评论(0)