Efficient Memory Management for GPU-based Deep Learning Systems
Not on the map. Why?
Abstract (arXiv)
GPU (graphics processing unit) has been used for many data-intensive applications. Among them, deep learning systems are one of the most important consumer systems for GPU nowadays. As deep learning applications impose deeper and larger models in order to achieve higher accuracy, memory management becomes an important research topic for deep learning systems, given that GPU has limited memory size. Many approaches have been proposed towards this issue, e.g., model compression and memory swapping. However, they either degrade the model accuracy or require a lot of manual intervention. In this paper, we propose two orthogonal approaches to reduce the memory cost from the system perspective. Our approaches are transparent to the models, and thus do not affect the model accuracy. They are achieved by exploiting the iterative nature of the training algorithm of deep learning to derive the lifetime and read/write order of all variables. With the lifetime semantics, we are able to implement a memory pool with minimal fragments. However, the optimization problem is NP-complete. We propose a heuristic algorithm that reduces up to 13.3% of memory compared with Nvidia's default memory pool with equal time complexity. With the read/write semantics, the variables that are not in use can be swapped out from GPU to CPU to reduce the memory footprint. We propose multiple swapping strategies to automatically decide which variable to swap and when to swap out (in), which reduces the memory cost by up to 34.2% without communication overhead.
Key facts. Cited by 6 papers in the map (data through 14 Oct 2026). First posted on arXiv 19 Feb 2019.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 3; 2022: 2; 2023: 1.
6 papers.
- 2021ZeRO-Offload: Democratizing Billion-Scale Model Trainingcited by 341
- 2023Angel-PTM: A Scalable and Economical Large-scale Pre-training System in Tencentcited by 8
- 2022Harmony: Overcoming the Hurdles of GPU Memory Capacity to Train Massive DNN Models on Commodity Serverscited by 6
- 2022Survey on Large Scale Neural Network Trainingcited by 4
- 2021TENSILE: A Tensor granularity dynamic GPU memory scheduling method toward multiple dynamic workloads systemcited by 1
- 2021Analysis of memory consumption by neural networks based on hyperparameterscited by 1
- 2023Angel-PTM: A Scalable and Economical Large-scale Pre-training System in Tencent6 Mar 2023
- 2022Survey on Large Scale Neural Network Training21 Feb 2022
- 2022Harmony: Overcoming the Hurdles of GPU Memory Capacity to Train Massive DNN Models on Commodity Servers2 Feb 2022
- 2021Analysis of memory consumption by neural networks based on hyperparameters21 Oct 2021
- 2021TENSILE: A Tensor granularity dynamic GPU memory scheduling method toward multiple dynamic workloads system27 May 2021
- 2021ZeRO-Offload: Democratizing Billion-Scale Model Training18 Jan 2021