DCMLFeb 22, 2018

SparCML: High-Performance Sparse Communication for Machine Learning

arXiv:1802.08021v3146 citations
AI Analysis

This addresses scalability issues for distributed ML practitioners by enabling more efficient data-parallel training, though it is incremental as it builds on existing MPI and sparse communication ideas.

The paper tackles the communication bottleneck in distributed machine learning by exploiting sparsity in gradients, proposing SparCML, a library that introduces sparse communication protocols and achieves significant speedups, such as up to 5x faster training on large datasets.

Applying machine learning techniques to the quickly growing data in science and industry requires highly-scalable algorithms. Large datasets are most commonly processed "data parallel" distributed across many nodes. Each node's contribution to the overall gradient is summed using a global allreduce. This allreduce is the single communication and thus scalability bottleneck for most machine learning workloads. We observe that frequently, many gradient values are (close to) zero, leading to sparse of sparsifyable communications. To exploit this insight, we analyze, design, and implement a set of communication-efficient protocols for sparse input data, in conjunction with efficient machine learning algorithms which can leverage these primitives. Our communication protocols generalize standard collective operations, by allowing processes to contribute arbitrary sparse input data vectors. Our generic communication library, SparCML, extends MPI to support additional features, such as non-blocking (asynchronous) operations and low-precision data representations. As such, SparCML and its techniques will form the basis of future highly-scalable machine learning frameworks.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes