LGMLJun 30, 2020

Data Movement Is All You Need: A Case Study on Optimizing Transformers

arXiv:2007.00072v3187 citations
Originality Incremental advance
AI Analysis

This work addresses performance bottlenecks in transformer training, which is critical for researchers and practitioners dealing with compute-intensive tasks, though it is incremental as it builds on existing optimization efforts.

The paper tackled the problem of inefficient GPU utilization in transformer training by identifying data movement as the key bottleneck, and presented a recipe for optimizing data movement that achieved up to 22.91% reduction in data movement and a 1.30x performance improvement over state-of-the-art frameworks for a BERT encoder layer.

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.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes