Bivariate Polynomial Coding for Exploiting Stragglers in Heterogeneous Coded Computing Systems
Polynomial coding has been proposed as a solution to the straggler mitigation problem in distributed matrix multiplication. Previous works in the literature employ univariate polynomials to encode matrix partitions. Such schemes greatly improve the speed of distributed computing systems by making the task completion time to depend only on the fastest workers. However, the work done by the slowest workers, which fails to finish the task assigned to them, is completely ignored. In order to exploit the partial computations of the slower workers, we further decompose the overall matrix multiplication task into even smaller subtasks to better fit workers' storage and computation capacities. In this work, we show that univariate schemes fail to make an efficient use of the storage capacity and we propose bivariate polynomial codes. We show that bivariate polynomial codes are a more natural choice to accommodate the additional decomposition of subtasks, as well as, heterogeneous storage and computation resources at workers. However, in contrast to univariate polynomial decoding, for multivariate interpolation guarantying decodability is much harder. We propose two bivartiate polynomial schemes. The first scheme exploits the fact that bivariate interpolation is always possible for rectangular grid of points. We obtain the rectangular grid of points at the cost of allowing some redundant computations. For the second scheme, we relax the decoding constraint, and require decodability for almost all choices of evaluation points. We present interpolation sets satisfying the almost decodability conditions for certain storage configurations of workers. Our numerical results show that bivariate polynomial coding considerably reduces the completion time of distributed matrix multiplication.
READ FULL TEXT