  Inexpensive cloud services, such as serverless computing, are often
vulnerable to straggling nodes that increase end-to-end latency for distributed
computation. We propose and implement simple yet principled approaches for
straggler mitigation in serverless systems for matrix multiplication and
evaluate them on several common applications from machine learning and
high-performance computing. The proposed schemes are inspired by
error-correcting codes and employ parallel encoding and decoding over the data
stored in the cloud using serverless workers. This creates a fully distributed
computing framework without using a master node to conduct encoding or
decoding, which removes the computation, communication and storage bottleneck
at the master. On the theory side, we establish that our proposed scheme is
asymptotically optimal in terms of decoding time and provide a lower bound on
the number of stragglers it can tolerate with high probability. Through
extensive experiments, we show that our scheme outperforms existing schemes
such as speculative execution and other coding theoretic methods by at least
25%.
