Tutorial
ASTRA-sim: Enabling SW/HW Co-Design Exploration for Distributed Deep Learning Training Platforms
Tushar Krishna
Room 203
Modern Deep Learning systems heavily rely on distributed training over customized high-performance accelerator (e.g.,
TPU, GPU)-based hardware platforms connected via high-performance interconnects (e.g., NVlinks). Examples today
include NVIDIA’s DGX-2, Google’s Cloud TPU and Facebook’s Zion. Deep Neural Network (DNN) training involves a
complex interplay between the DNN model architecture, parallelization strategy, scheduling strategy, collective
communication algorithm, network topology, and the accelerator endpoint, as shown in the figure above.
Collective communications (e.g., all-reduce, all-to-all, reduce-scatter, all-gather) are initiated at different phases for different parallelism approaches – and play a crucial role in overall runtime, if not hidden efficiently behind compute. This problem becomes paramount as recent models for NLP such as GPT-3 and Recommendations such as DLRM have billions to trillions of parameters and need to be scaled across tens to hundreds to thousands of accelerator nodes. As innovation in AI/ML models continues to grow at an accelerated rate, there is a need for a comprehensive methodology to understand and navigate this complex design-space to (i) architect future platforms and (ii) develop novel parallelism schemes to support efficient training of future DNN models.
As an ongoing collaboration between Intel, Facebook and Georgia Tech, we have been jointly developing a detailed cycle-
accurate distributed training simulator called ASTRA-sim. ASTRA-sim models the co-design space described above and
schedules the compute-communication interactions from distributed training over plug-and-play compute and network
simulators. It enables a systematic study of bottlenecks at the software and hardware level for scaling training. It also enables end-to-end design-space exploration for running large DNN models over future training platforms. Papers detailing ASTRA-sim were presented at ISPASS 2020 and Hot Interconnects 2020. Currently, ASTRA-sim uses SCALE-sim (a Google TPU like simulator) as its compute model and provides a suite of network models (analytical network, Garnet from gem5 and NS3) to go from simple analytical to detailed cycle-accurate simulation of large-scale training platforms. To the best of our knowledge, ASTRA-sim is the first open-source simulator for modeling future distributed training platforms.
In this tutorial, we will educate the research community about the challenges in the emerging domain of distributed training, demonstrate the capabilities of ASTRA-sim with examples and discuss ongoing development efforts.
Schedule
Wed 1:00 p.m. - 2:00 p.m.
|
Introduction to Distributed DL Training
(
Talk
)
>
|
Tushar Krishna 🔗 |
Wed 2:00 p.m. - 2:20 p.m.
|
Challenges on Distributed Training Systems
(
talk
)
>
|
🔗 |
Wed 2:20 p.m. - 3:30 p.m.
|
Introduction to ASTRA-sim simulator
(
talk
)
>
|
Saeed Rashidi 🔗 |
Wed 3:30 p.m. - 4:00 p.m.
|
Coffee Break
|
🔗 |
Wed 4:00 p.m. - 4:50 p.m.
|
Hands-on Exercises on Using ASTRA-sim
(
talk
)
>
|
William Won · Taekyung Heo 🔗 |
Wed 4:50 p.m. - 5:00 p.m.
|
Closing Remarks and Future Developments
(
Closing Remarks
)
>
|
Taekyung Heo 🔗 |