MATCHA: Speeding Up Decentralized SGD via Matching Decomposition Sampling
This addresses the problem of slow decentralized training for distributed machine learning practitioners, offering a significant speedup.
The paper tackles the error-runtime trade-off in decentralized SGD by proposing MATCHA, which parallelizes communication via topology decomposition into matchings, achieving up to 5x faster time to reach the same training loss compared to vanilla decentralized SGD.
This paper studies the problem of error-runtime trade-off, typically encountered in decentralized training based on stochastic gradient descent (SGD) using a given network. While a denser (sparser) network topology results in faster (slower) error convergence in terms of iterations, it incurs more (less) communication time/delay per iteration. In this paper, we propose MATCHA, an algorithm that can achieve a win-win in this error-runtime trade-off for any arbitrary network topology. The main idea of MATCHA is to parallelize inter-node communication by decomposing the topology into matchings. To preserve fast error convergence speed, it identifies and communicates more frequently over critical links, and saves communication time by using other links less frequently. Experiments on a suite of datasets and deep neural networks validate the theoretical analyses and demonstrate that MATCHA takes up to $5\times$ less time than vanilla decentralized SGD to reach the same training loss.