A Data-Loader Tunable Knob to Shorten GPU Idleness for Distributed Deep Learning

被引:0
作者
Jia, Danlin [1 ]
Yuan, Geng [2 ]
Xie, Yiming [3 ]
Lin, Xue [3 ]
Mi, Ningfang [3 ]
机构
[1] Samsung Semicond Inc, San Jose, CA 95112 USA
[2] Univ Georgia, Sch Comp, Athens, GA USA
[3] Northeastern Univ, Coll Engn, Boston, MA USA
基金
美国国家科学基金会;
关键词
Distributed deep learning; resource utilization; I/O characteristics; throughput and makespan optimization; NEURAL-NETWORK;
D O I
10.1145/3680546
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Deep Neural Networks (DNNs) have been applied as an effective machine learning algorithm to tackle problems in different domains. However, the endeavor to train sophisticated DNN models can stretch from days into weeks, presenting substantial obstacles in the realm of research focused on large-scale DNN architectures. Distributed Deep Learning (DDL) contributes to accelerating DNN training by distributing training workloads across multiple computation accelerators, for example, graphics processing units (GPUs). Despite the considerable amount of research directed toward enhancing DDL training, the influence of data loading on GPU utilization and overall training efficacy remains relatively overlooked. It is non-trivial to optimize data-loading in DDL applications that need intensive central processing unit (CPU) and input/output (I/O) resources to process enormous training data. When multiple DDL applications are deployed on a system (e.g., Cloud and High-Performance Computing (HPC) system), the lack of a practical and efficient technique for data-loader allocation incurs GPU idleness and degrades the training throughput. Therefore, our work first focuses on investigating the impact of data-loading on the global training throughput. We then propose a throughput prediction model to predict the maximum throughput for an individual DDL training application. By leveraging the predicted results, A-Dloader is designed to dynamically allocate CPU and I/O resources to concurrently running DDL applications and use the data-loader allocation as a knob to reduce GPU idle intervals and thus improve the overall training throughput. We implement and evaluate A-Dloader in a DDL framework for a series of DDL applications arriving and completing across the runtime. Our experimental results show that A-Dloader can achieve a 28.9% throughput improvement and a 10% makespan improvement compared with allocating resources evenly across applications.
引用
收藏
页数:25
相关论文
共 35 条
[1]  
[Anonymous], 2016, Paleo: A performance model for deep neural networks
[2]  
[Anonymous], NVIDIA COLLECTIVE CO
[3]  
[Anonymous], CRCLR House. (n.d.). Retrieved October 25, 2023, from https://www.zrs.berlin/en/project/crclr-house-2/
[4]   Demystifying Parallel and Distributed Deep Learning: An In-depth Concurrency Analysis [J].
Ben-Nun, Tal ;
Hoefler, Torsten .
ACM COMPUTING SURVEYS, 2019, 52 (04)
[5]  
Choi D, 2020, Arxiv, DOI arXiv:1907.05550
[6]   Clairvoyant Prefetching for Distributed Machine Learning I/O [J].
Dryden, Nikoli ;
Bohringer, Roman ;
Ben-Nun, Tal ;
Hoefler, Torsten .
SC21: INTERNATIONAL CONFERENCE FOR HIGH PERFORMANCE COMPUTING, NETWORKING, STORAGE AND ANALYSIS, 2021,
[7]  
Evci Utku, 2020, PR MACH LEARN RES
[8]  
Howard AG, 2017, Arxiv, DOI [arXiv:1704.04861, DOI 10.48550/ARXIV.1704.04861]
[9]  
Gu JC, 2019, PROCEEDINGS OF THE 16TH USENIX SYMPOSIUM ON NETWORKED SYSTEMS DESIGN AND IMPLEMENTATION, P485
[10]  
Hashemi SH, 2018, Arxiv, DOI arXiv:1803.03288