一句话:提出 CoCoNet,用 DSL、语义保持变换与编译器联合优化分布式机器学习中的计算与通信 GPU 内核。
当前分布式机器学习框架将计算与通信内核逻辑分离,错失了跨抽象边界的优化机会;手动优化需修改底层计算与通信库,既耗时又易错。本文提出 CoCoNet,包含:表达分布式机器学习程序的 DSL(将计算与通信作为一等构造)、一组保持语义的优化变换,以及生成联合优化通信与计算 GPU 内核的编译器。该设计支持融合、通信与计算重叠等优化。作者仅用少量代码即可优化大语言模型的数据并行、模型并行与流水并行工作负载,实验表明 CoCoNet 显著优于当前最先进的分布式机器学习实现。
Recent trends towards large machine learning models require both training and inference tasks to be distributed. Considering the huge cost of training these models, it is imperative to unlock optimizations in computation and communication to obtain best performance. However, the current logical separation between computation and communication kernels in machine learning frameworks misses optimization opportunities across this barrier. Breaking this abstraction can provide many optimizations to improve the performance of distributed workloads. However, manually applying these optimizations requires modifying the underlying computation and communication libraries for each scenario, which is both time consuming and error-prone. Therefore, we present CoCoNet, which contains (i) a domain specific language to express a distributed machine learning program in the form of computation and communication operations, (ii) a set of semantics preserving transformations to optimize the program, and (iii) a compiler to generate jointly optimized communication and computation GPU kernels. Providing both computation and communication as first class constructs allows users to work on a high-level abstraction and apply powerful optimizations, such as fusion or overlapping of communication and computation. CoCoNet enabled us to optimize data-, model- and pipeline-parallel workloads in large language models with only a few lines of code. Our experiments show that CoCoNet significantly outperforms state-of-the-art distributed machine learning implementations.
DOI 原文 · arXiv · PDF(开放获取) · DBLP
@inproceedings{JangdaHLSMMMMS22,
title = {Breaking the computation and communication abstraction barrier in distributed machine learning workloads},
author = {Abhinav Jangda and Jun Huang and Guodong Liu and Amir Hossein Nodehi Sabet and Saeed Maleki and Youshan Miao and Madanlal Musuvathi and Todd Mytkowicz and Olli Saarikivi},
booktitle = {ASPLOS},
year = {2022},
doi = {10.1145/3503222.3507778}
}