2020/06/30 by Andrei Ivanov, Nikoli Dryden, Ivanov, Andrei +8 · 24 citations
Computer Science · Engineering · Mathematics · #Advanced Neural Network Applications #Artificial intelligence #Artificial neural network #Bottleneck #Computer architecture #Computer engineering #Computer science #Deep learning #Embedded system #Engineering #FOS: Computer and information sciences #Implementation #Machine Learning (cs.LG) #Machine Learning (stat.ML) #Machine learning #Parallel Computing and Optimization Techniques #Software engineering #Topic Modeling #Training set #Transformer #Voltage #cs.LG #stat.ML
paper · pdf · doi:10.48550/arxiv.2007.00072
published in arXiv (Cornell University) 3, 711-732 (Cornell University) · 22 pages, 8 figures; MLSys 2021 camera ready
openalex publication_date 2020/06/30 · arxiv created 2021/11/08 · arxiv updated 2021/11/09 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
Transformers are one of the most important machine learning workloads today. Training one is a very compute-intensive task, often taking days or weeks, and significant attention has been given to optimizing transformers. Despite this, existing implementations do not efficiently utilize GPUs. We find that data movement is the key bottleneck when training. Due to Amdahl's Law and massive improvements in compute performance, training has now become memory-bound. Further, existing frameworks use suboptimal data layouts. Using these insights, we present a recipe for globally optimizing data movement in transformers. We reduce data movement by up to 22.91% and overall achieve a 1.30x performance improvement over state-of-the-art frameworks when training a BERT encoder layer and 1.19x for the entire BERT. Our approach is applicable more broadly to optimizing deep neural networks, and offers insight into how to tackle emerging performance bottlenecks.