【Hello AI】AI通信加速库Deepnccl-实现更高效的多GPU互联通信

简介: Deepnccl是为阿里云神龙异构产品开发的一种用于多GPU互联的AI通信加速库,在AI分布式训练或多卡推理任务中用于提升通信效率。本文主要介绍Deepnccl的架构、优化原理和性能说明。

Deepnccl是为阿里云神龙异构产品开发的一种用于多GPU互联的AI通信加速库,在AI分布式训练或多卡推理任务中用于提升通信效率。本文主要介绍Deepnccl的架构、优化原理和性能说明。

一、Deepnccl的架构

Deepnccl基于NCCL(NVIDIA Collective Communications Library)通信算子的调用,能够实现更高效的多GPU互联通信,无感地加速分布式训练或多卡推理等任务。

Deepnccl的关联架构布局图如下所示:

架构层

说明

AI模型

Deepnccl在AI场景下使用时,具备通用性能,适用模型包括但不限于LLM大模型和SD文生图等AI模型。

AI框架层

在AI框架层,支持的AI框架和功能如下:

  • 支持通用的AI框架,例如PyTorch、TensorFlow、Mxnet等AI框架。
  • 支持基于AI框架之上的并行框架,例如Megatron、DeepSpeed、Collossal-AI等衍生框架。
  • Deepnccl通过底层Deepytorch实现了PyTorch框架的充分兼容和无感分布式训练性能优化,增加融合优化等额外调优手段。

说明

如需了解Deepytorch的更多信息,请参见什么是AI加速器Deepytorch

Deepnccl通信加速

接口层

在接口层,通过DeepncclWrapper封装nccl-base函数,提供了对通信算法的通用支持。支持的NCCL通信算法包括allreduce(全局归约)、reduce-scatter(分散归约)、allgather(全收集)等。

集合算法层

在集合算法层,通过集合通信编译技术,针对不同的机型构建自适应拓扑算法,实现NCCL Runtime充分兼容和无感的集合通信拓扑优化。

网络层

在网络层,通过对阿里云的VPC、RDMA或者eRDMA网络基础设施进行适配优化,实现网络层无感的通信优化。

二、优化原理

Deepnccl通信加速库在AI分布式训练或多卡推理任务中,具有显著的通信优化效果。具体说明如下:

  1. 单机优化

单机内的优化主要针对不同硬件拓扑机型的通信优化,以PCIe互连的机型和NVLink互连的机型为例,具体说明如下:

  • PCIe互连拓扑优化:该机型的多GPU卡之间共享PCIe带宽,通信容易受限于物理带宽。针对PCIe互连拓扑的通信优化特点,理论上,可以采用基于流水线的PS(Parameters Server:参数服务器)模式梯度规约算法CPU-Reduce大幅降低通信耗时。该算法按照GPU到CPU再到GPU的顺序构建流水线,将梯度规约的计算分散到多个设备上运行,来减少通信瓶颈。

例如,在通信数据量超过4 MB的场景,PCIe互连拓扑优化方案相比NCCL原生在性能上提升了20%以上。

  • NVLink互连拓扑优化:NCCL默认使用的Binary-Tree算法在V100机型上并不能充分发挥多通道性能。针对NVLink互连拓扑的通信优化,可以通过扩展单机内部不同的N-Trees拓扑结构组合,实现了拓扑调优并发挥多通道性能。

例如,在通信数据量超过128 MB的场景下,NVLink互连拓扑优化方案相比NCCL原生在性能上提升了20%以上。

  1. 多机优化

多机优化体现在通信算子编译优化、TCP多流优化、多机CPU-Reduce优化三个方面,具体说明如下:

  • 通信算子编译优化:针对阿里云上不同机型,以及网卡与GPU的不同拓扑连接等特点,相比较基于全局拓扑结构实现的Allreduce、Allgather或Reduce-scatter等算法,Hybrid+算法支持单机和多机的分层通信,充分利用单机内部高速带宽的同时降低了多机之间的通信量,通信算子编译优化方案相比NCCL原生在性能上提升了50%以上。
  • 通信多流优化:通常情况下,因网络带宽没有被充分利用,会导致上层集合通信算法的跨机性能无法达到最优。而采用基于TCP/IP的多流功能,提升分布式训练的并发通信能力,可以实现多机训练性能提升5%~20%。
  • 多机CPU-Reduce:该优化继承了单机内CPU-Reduce高效的异步流水线,并将跨机Socket通信也设计为流水线形态,实现多机通信全过程流水化,有效减少通信延迟,提高整体训练性能。

例如,在通信量较大的Transformer-based模型的多机训练场景下,多机CPU-Reduce优化方案可将端到端性能提升20%以上。

三、性能说明

Deepnccl通信加速库具有Allreduce单机优化、Allreduce多机优化、Reduce-scatter多机优化以及Allgather多机优化性能,具体说明如下:

特性

支持范围

性能提升率说明

Allreduce单机优化

支持A10的8卡机型,例如ecs.ebmgn7ix.32xlarge。

相比NCCL原生,使用Deepnccl进行Allreduce单机优化后,当通信数据量为512 B~2 M时,其通信性能提升10%~100%。

Allreduce多机优化

支持V100或A10等机型,例如

ecs.gn6v-c10g1.20xlarge或

ecs.ebmgn7ix.32xlarge。

  • 相比NCCL原生,使用Deepnccl进行Allreduce双机优化后,当通信数据量为128 M~256 M时,其通信性能提升10%~20%。
  • Deepnccl目前支持最多在8台机器上进行协同训练。

Reduce-scatter多机优化

支持V100或A10等机型,例如

ecs.gn6v-c10g1.20xlarge或 ecs.ebmgn7ix.32xlarge。

  • 相比NCCL原生,使用Deepnccl进行Reduce-scatter双机优化后,其通信性能提升30%。
  • Deepnccl目前支持特定的多机进行扩展,即2机2卡、2机4卡、2机8卡、4机8卡、7机8卡或8机8卡机型。

allgather多机优化

支持V100或A10等机型,例如

ecs.gn6v-c10g1.20xlarge或

ecs.ebmgn7ix.32xlarge。

  • 相比NCCL原生,使用Deepnccl进行Allgather双机优化后,其通信性能提升80%。
  • Deepnccl目前支持最多在20台机器上进行协同训练。

好啦!小弹的分享到此为止。我们更欢迎您分享您对阿里云产品的设想、对功能的建议或者各种吐槽,请扫描提交问卷并获得社区积分或精美礼品一份。https://survey.aliyun.com/apps/zhiliao/P4y44bm_8

【扫码填写上方调研问卷】

欢迎每位来到弹性计算的开发者们来反馈问题哦~

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
3月前
|
人工智能 中间件 数据库
沐曦 GPU 融入龙蜥,共筑开源 AI 基础设施新底座
沐曦自加入社区以来,一直与龙蜥社区在推动 AIDC OS 的开源社区建设等方面保持合作。
|
5月前
|
存储 机器学习/深度学习 人工智能
GPU云存储性能:加速AI与高性能计算的关键
在人工智能(AI)、机器学习(ML)和高性能计算(HPC)飞速发展的今天,数据存储和处理的效率已成为决定项目成败的关键因素。传统的云存储方案往往无法满足GPU密集型工作负载的需求,而GPU云存储性能的优化正成为企业提升计算效率、降低延迟的核心突破口。本文将深入探讨GPU云存储性能的重要性、关键技术及优化策略,助您在数据驱动的竞争中占据先机。
|
3月前
|
人工智能 并行计算 PyTorch
以Lama Cleaner的AI去水印工具理解人工智能中经常会用到GPU来计算的CUDA是什么? 优雅草-卓伊凡
以Lama Cleaner的AI去水印工具理解人工智能中经常会用到GPU来计算的CUDA是什么? 优雅草-卓伊凡
325 4
|
4月前
|
机器学习/深度学习 人工智能 容灾
硅谷GPU云托管:驱动AI革命的下一代计算基石
在人工智能与高性能计算席卷全球的今天,硅谷作为科技创新的心脏,正通过GPU云托管服务重新定义计算能力的边界。无论您是初创公司的机器学习工程师,还是跨国企业的研究团队,硅谷GPU云托管已成为实现突破性创新的关键基础设施。
|
Web App开发 编解码 人工智能
从通信到AI FreeSWITCH与WebRTC
FreeSWITCH是一个开源的软交换平台,具有模块化结构,支持包括WebRTC在内的多种互通互联。本文来自FreeSWITCH 中文社区创始人杜金房在LiveVideoStack线上交流分享中的演讲,详细介绍了FreeSWITCH的功能特性、架构以及现状。
2065 1
从通信到AI FreeSWITCH与WebRTC
|
3月前
|
消息中间件 人工智能 安全
云原生进化论:加速构建 AI 应用
本文将和大家分享过去一年在支持企业构建 AI 应用过程的一些实践和思考。
830 48
|
4月前
|
人工智能 安全 中间件
阿里云 AI 中间件重磅发布,打通 AI 应用落地“最后一公里”
9 月 26 日,2025 云栖大会 AI 中间件:AI 时代的中间件技术演进与创新实践论坛上,阿里云智能集团资深技术专家林清山发表主题演讲《未来已来:下一代 AI 中间件重磅发布,解锁 AI 应用架构新范式》,重磅发布阿里云 AI 中间件,提供面向分布式多 Agent 架构的基座,包括:AgentScope-Java(兼容 Spring AI Alibaba 生态),AI MQ(基于Apache RocketMQ 的 AI 能力升级),AI 网关 Higress,AI 注册与配置中心 Nacos,以及覆盖模型与算力的 AI 可观测体系。
1083 50
|
3月前
|
人工智能 运维 Kubernetes
Serverless 应用引擎 SAE:为传统应用托底,为 AI 创新加速
在容器技术持续演进与 AI 全面爆发的当下,企业既要稳健托管传统业务,又要高效落地 AI 创新,如何在复杂的基础设施与频繁的版本变化中保持敏捷、稳定与低成本,成了所有技术团队的共同挑战。阿里云 Serverless 应用引擎(SAE)正是为应对这一时代挑战而生的破局者,SAE 以“免运维、强稳定、极致降本”为核心,通过一站式的应用级托管能力,同时支撑传统应用与 AI 应用,让企业把更多精力投入到业务创新。
533 30
|
3月前
|
设计模式 人工智能 自然语言处理
3个月圈粉百万,这个AI应用在海外火了
不知道大家还记不记得,我之前推荐过一个叫 Agnes 的 AI 应用,也是当时在 WAIC 了解到的。
531 1

热门文章

最新文章

相关产品

  • GPU云服务器