Daniele De Sensi, Tommaso Bonato, David Saam, Torsten Hoefler:
Swing: Short-cutting Rings for Higher Bandwidth Allreduce
(In 21st USENIX Symposium on Networked Systems Design and Implementation (NSDI '24), presented in Santa Clara, CA, USA, pages 1445-1462, USENIX Association, ISBN: 978-1-939133-39-7, Apr. 2024)
The allreduce collective operation accounts for a significant fraction of the runtime of workloads running on distributed systems. One factor determining its performance is the distance between communicating nodes, especially on networks like torus, where a higher distance implies multiple messages being forwarded on the same link, thus reducing the allreduce bandwidth. Torus networks are widely used on systems optimized for machine learning workloads (e.g., Google TPUs and Amazon Trainium devices), as well as on some of the Top500 supercomputers. To improve allreduce performance on torus networks we introduce Swing, a new algorithm that keeps a low distance between communicating nodes by swinging between torus directions. Our analysis and experimental evaluation show that Swing outperforms by up to 3x existing allreduce algorithms for vectors ranging from 32B to 128MiB, on different types of torus and torus-like topologies, regardless of their shape and size.
@inproceedings{desensi2024swing, author={Daniele De Sensi and Tommaso Bonato and David Saam and Torsten Hoefler}, title={{Swing: Short-cutting Rings for Higher Bandwidth Allreduce}}, year={2024}, month={Apr.}, pages={1445-1462}, booktitle={21st USENIX Symposium on Networked Systems Design and Implementation (NSDI '24)}, location={Santa Clara, CA, USA}, publisher={USENIX Association}, isbn={978-1-939133-39-7}, source={http://www.unixer.de/~htor/publications/}, }