We gratefully acknowledge support from
the Simons Foundation and member institutions.
Full-text links:

Download:

Current browse context:

cs.CL

Change to browse by:

References & Citations

DBLP - CS Bibliography

Bookmark

(what is this?)
CiteULike logo BibSonomy logo Mendeley logo del.icio.us logo Digg logo Reddit logo ScienceWISE logo

Computer Science > Computation and Language

Title: Efficient Large-Scale Language Model Training on GPU Clusters Using Megatron-LM

Abstract: Large language models have led to state-of-the-art accuracies across a range of tasks. However, training these models efficiently is challenging for two reasons: a) GPU memory capacity is limited, making it impossible to fit large models on even a multi-GPU server, and b) the number of compute operations required to train these models can result in unrealistically long training times. Consequently, new methods of model parallelism such as tensor and pipeline parallelism have been proposed. Unfortunately, naive usage of these methods leads to fundamental scaling issues at thousands of GPUs, e.g., due to expensive cross-node communication or devices spending significant time waiting on other devices to make progress.
In this paper, we show how different types of parallelism methods (tensor, pipeline, and data parallelism) can be composed to scale to thousands of GPUs and models with trillions of parameters. We survey techniques for pipeline parallelism and propose a novel interleaved pipeline parallelism schedule that can improve throughput by 10+% with memory footprint comparable to existing approaches. We quantitatively study the trade-offs between tensor, pipeline, and data parallelism, and provide intuition as to how to configure distributed training of a large model. Our approach allows us to perform training iterations on a model with 1 trillion parameters at 502 petaFLOP/s on 3072 GPUs with achieved per-GPU throughput of 52% of theoretical peak. Our code is open sourced at this https URL
Comments: Accepted to SC 2021
Subjects: Computation and Language (cs.CL); Distributed, Parallel, and Cluster Computing (cs.DC)
Cite as: arXiv:2104.04473 [cs.CL]
  (or arXiv:2104.04473v5 [cs.CL] for this version)

Submission history

From: Deepak Narayanan [view email]
[v1] Fri, 9 Apr 2021 16:43:11 GMT (3055kb,D)
[v2] Fri, 14 May 2021 17:44:52 GMT (1732kb,D)
[v3] Fri, 30 Jul 2021 07:18:32 GMT (1196kb,D)
[v4] Sun, 15 Aug 2021 07:11:58 GMT (2353kb,D)
[v5] Mon, 23 Aug 2021 19:41:13 GMT (1195kb,D)

Link back to: arXiv, form interface, contact.