SWARM Parallelism: Training Large Models Can Be Surprisingly Communication-Efficient
This addresses the high cost and communication bottlenecks in training large models for researchers and organizations with limited resources, offering an incremental improvement over existing methods.
The paper tackles the problem of training large deep learning models on cheap, poorly connected hardware by proposing SWARM parallelism, a model-parallel algorithm that reduces communication intensity and enables training a 1B-parameter Transformer on low-bandwidth T4 GPUs with less than 200Mb/s network.
Many deep learning applications benefit from using large models with billions of parameters. Training these models is notoriously expensive due to the need for specialized HPC clusters. In this work, we consider alternative setups for training large models: using cheap "preemptible" instances or pooling existing resources from multiple regions. We analyze the performance of existing model-parallel algorithms in these conditions and find configurations where training larger models becomes less communication-intensive. Based on these findings, we propose SWARM parallelism, a model-parallel training algorithm designed for poorly connected, heterogeneous and unreliable devices. SWARM creates temporary randomized pipelines between nodes that are rebalanced in case of failure. We empirically validate our findings and compare SWARM parallelism with existing large-scale training approaches. Finally, we combine our insights with compression strategies to train a large Transformer language model with 1B shared parameters (approximately 13B before sharing) on preemptible T4 GPUs with less than 200Mb/s network.