LLM2D
MSCCL++: 为前沿AI应用重新思考GPU通信抽象
MSCCL++: Rethinking GPU Communication Abstractions for Cutting-edge AI Applications
作者: Aashaka Shah, Abhinav Jangda, Binyang Li, Caio Rocha, Changho Hwang, Jithin Jose, Madan Musuvathi, Olli Saarikivi, Peng Cheng, Qinghua Zhou, Roshan Dathathri, Saeed Maleki, Ziyue Yang
发布日期: 4/15/2025
arXiv ID: oai:arXiv.org:2504.09014v1

摘要

arXiv:2504.09014v1 类型:跨领域 摘要:现代前沿AI应用正在快速发展中的异构新兴硬件设备上进行开发。这要求频繁重新调整AI软件堆栈,以适应从新硬件自下而上的变化,而通用软件库需要时间适应这些变化。因此,实际应用通常会开发针对其特定工作负载和硬件优化的自定义软件堆栈。自定义堆栈有助于快速开发和优化,但会带来大量重复工作,特别是在编写非移植代码方面。本文讨论了一种AI应用的新通信库接口,该接口通过减少重复努力同时保持自定义灵活性,来提供便携性和性能。我们提出了MSCCL++,一种基于关注点分离的GPU通信的新颖抽象:(1) 原语接口提供最小的硬件抽象,作为软件和硬件开发者撰写自定义通信的共同基础,(2) 高级便携接口和特定实现则允许不同硬件环境下的优化。这种方法使得原语接口在不同应用之间具有重用性,同时允许高度灵活的优化。与最先进的基线(NCCL、RCCL 和 MSCCL)相比,MSCCL++ 在聚合通信中实现高达 3.8 倍的速度提升,并在实际AI推理工作中负载中实现高达 15%的性能提升。MSCCL++ 已在微软Azure提供的多个AI服务中投入生产,并被AMD维护的GPU聚合通信库RCCL所采用。MSCCL++ 是开源软件,并可在 https://github.com/microsoft/mscclpp 获取。