Litcius/Paper detail

HAP: SPMD DNN Training on Heterogeneous GPU Clusters with Automated Program Synthesis

Shiwei Zhang, Lansong Diao, Chuan Wu, Zongyan Cao, Siyu Wang, Wei Lin

202413 citationsDOI

Abstract

Single-Program-Multiple-Data (SPMD) parallelism has recently been adopted to train large deep neural networks (DNNs). Few studies have explored its applicability on heterogeneous clusters, to fully exploit available resources for large model learning. This paper presents HAP, an automated system designed to expedite SPMD DNN training on heterogeneous clusters. HAP jointly optimizes the tensor sharding strategy, sharding ratios across heterogeneous devices and the communication methods for tensor exchanges for optimized distributed training with SPMD parallelism. We novelly formulate model partitioning as a program synthesis problem, in which we generate a distributed program from scratch on a distributed instruction set that semantically resembles the program designed for a single device, and systematically explore the solution space with an A-based search algorithm. We derive the optimal tensor sharding ratios by formulating it as a linear programming problem. Additionally, HAP explores tensor communication optimization in a heterogeneous cluster and integrates it as part of the program synthesis process, for automatically choosing optimal collective communication primitives and applying sufficient factor broadcasting technique. Extensive experiments on representative workloads demonstrate that HAP achieves up to 2.41x speed-up on heterogeneous clusters.

Topics & Concepts

SPMDComputer scienceParallel computingParallelism (grammar)Tensor (intrinsic definition)ExploitSpeedupGPU clusterDistributed computingCluster (spacecraft)Process (computing)Artificial neural networkComputer architectureArtificial intelligenceProgramming languageCUDAMathematicsComputer securityPure mathematicsParallel Computing and Optimization TechniquesTensor decomposition and applicationsAdvanced Neural Network Applications
HAP: SPMD DNN Training on Heterogeneous GPU Clusters with Automated Program Synthesis | Litcius