AI智能总结
华为昇腾服务器DeepSeek V3/R1推理部署最佳实践 樊玉伟,郑灵超,李勇锋,区晓峰,李 君,Ken Zhang,韩 伟,李 亿杜霄鹏,王鹏程,刘杰,董谷音,梁泓,柳伊扬,廖崎臣,高雪健王鹏宇,赵毅,王翔,林栋,练韵文,林清扬,陈衎,庞西豹吕俊龙,兰龙文,张维熹,丁益斌,高宇,陶壮,张弓,谢冬辉范港华,范峻逸,胡琤球,李宝,郑乐文,陈付恺,申智好,金颖 华为技术有限公司 2025年5月19日 摘要 本报告旨在探讨华为昇腾服务器上部署DeepSeek V3/R1推理的最佳实践。为满足不同推理场景的需求,本文提供两种不同的部署形态。第一种是基于华为CloudMatrix 384超节点的大规模EP部署策略:为充分发挥CloudMatrix 384的独特组网优势,使用其中的144张卡作为一个Decode实例,以实现较低时延下的高并发,当前已达到了50ms时延约束下每卡输出1920 Tokens/s。第二种是基于Atlas 800I A2服务器的小规模EP部署策略:使用4节点A2服务器作为一个Decode实例,以实现较优吞吐下的灵活部署,当前达到了100ms时延约束下每卡输出723∼808 Tokens/s。 我们采用基于vLLM的部署框架,并面向昇腾服务器进行修改以适配EP/DP/TP混合并行策略,同时满足灵活调度和极致性能的需求。模型层面,采用A8W8(INT8)的动态量化方式,并使用Multi-Token Prediction技术进行加速。针对昇腾芯片和昇腾服务器组网特征,从数学上重新审视模型的推理过程,选用了合适的并行方式和计算逻辑,同时还充分利用了昇腾硬件支持多种多流并发的能力以最大化实现通信/计算/数据搬运的相互掩盖,实现模型层面的性能极致。算子层面,提出了多种结合数学等价变换、融合算子、缓存复用和流水掩盖等技术的计算和通信算子的优化方案,使MLA、MoE和通信算子达到预期的算力利用率、访存带宽和通信带宽。 本报告将详细介绍上述两套部署方案,并列出关键的特性和优化技术,更详细的技术细节之后会陆续公开。 目录 1引言3 昇腾服务器和组网 25 2.1昇腾芯片. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52.2Atlas 800I A2服务器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52.3CloudMatrix 384超节点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6 3.1模型与框架配置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63.2Atlas 800I A2部署方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83.3CloudMatrix 384超节点部署方案. . . . . . . . . . . . . . . . . . . . . . . . . . .12 框架侧性能优化14 4 4.1API Server扩展技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144.2MoE模型负载均衡. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15 5模型侧性能优化15 5.1模型侧通信优化. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155.2模型侧并发方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175.3推理投机框架FusionSpec. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 6.1MLA算子优化. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196.2MoE通信算子优化. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 性能分析21 7 7.1Altas 800I A2性能分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217.2CloudMatrix 384超节点性能分析. . . . . . . . . . . . . . . . . . . . . . . . . . .24 8下一步工作 1引言 DeepSeek V3/R1作为业界领先的开源大语言模型,已在自然语言处理、代码生成、知识推理等多个领域展现出卓越的应用价值。DeepSeek团队于3月份推出了迭代版本DeepSeekV3-0324 [4], 加 强 其 代 码 和 数 学 能 力, 并 于4月 份 发 布 具 备 更 强 数 学 定 理 证 明 能 力 的DeepSeek-Prover-V2-671B [11]。这两款新的模型与原始DeepSeek V3架构完全兼容,仅需进行参数差异化配置的权重调整,便可实现既有模型部署方案的无缝迁移。这一设计不仅降低了技术迭代的边际成本,更有效扩大了DeepSeek V3系列模型的使用范围。 本报告分享当前在昇腾服务器上高性能DeepSeek V3/R1部署方案的最佳实践,包括具体的部署方案和关键优化特性的简单介绍。关键优化特性的详细报告将于近期陆续发布。 昇腾服务器有多种配置和型号,我们针对近期发布的CloudMatrix 384超节点和Atlas 800IA2推理服务器两种典型机型进行部署。 为了解耦Prefill阶段的首token时延约束和Decode阶段的解码时延约束,同时希望针对不同场景选择最优的部署策略和计算流程,我们采用PD分离部署的方式。在框架侧,以vLLM为基础,针对DP、EP和TP并行策略做了相应适配,在KVCache传输方面采用了灵衢直联的技术来降低开销,在请求下发、调度策略和框架前后处理等方面做了性能优化,以实现整个系统的最优性能。模型方面,采用A8W8(INT8)的动态量化策略。针对昇腾芯片和昇腾服务器组网特征,从数学上重新审视模型的推理过程,并综合考虑了数据搬运量、数据通信量、计算量和内存占用量,选用了合适的并行方式和计算逻辑,有效降低了模型推理过程中的通信和计算耗时;我们还充分利用了昇腾硬件的多流并发能力,实现通信-计算并发、通信-通信并发和通信-权重预取并发等多种加速技术,从而做到通信/计算/数据搬运的相互掩盖,实现模型层面的极致性能。算子方面,我们针对DeepSeek模型的特点,提出了多种结合数学等价变换、融合算子、缓存复用、流水掩盖等技术的极致优化的计算算子和通信算子,特别是在MLA、MLA前序计算、Dispatch/Combine通算融合算子和指令级底层通信调度方面做了深入的优化,以最大化利用昇腾的算力、访存带宽和通信带宽。 详细的部署方面,由于两种机型定位和配置不同,所以具体部署方案也不尽相同。 针对CloudMatrix 384超节点,其特殊的组网方式使其具有很高的通信带宽。按照DeepSeek的论文[16]所述,Decode部分是严重的通信瓶颈,在Micro-batch技术的加持下,几乎可以做到通信掩盖其他所有计算类操作。而CloudMatrix 384的独特组网使得通信耗时大幅降低,可以有效释放昇腾芯片的算力,具体见第7.2节。因此,针对超节点我们采用大规模EP并行的方式来部署:Prefill使用16卡,Decode使用144卡。其中Decode部分使用128卡通过大规模EP的方式部署路由专家,16卡通过DP的方式部署共享专家,MLA部分使用DP的方式进行部署。按照类似于[16]的分析,超节点可以获得非常高的理论吞吐。实际场景下,由于各种因素的影响,包括Decode时延的约束使得各部分耗时未能达到理想的线性度,带宽抢占带来一部分性能劣化,框架的耗时和调度开销带来了额外的时延增加,MLA部分的序列负载均衡和MoE部分的专家负载均衡带来进一步的性能恶化;最后多种因素综合在一起,使得当前吞吐如[19]所述,实现在保证50ms时延下单卡Decode吞吐达到1920 Tokens/s。 针对Atlas 800I A2服务器,由于每个节点包含8张昇腾芯片,我们需要采用多节点互联的方式来进行部署。综合考虑模型吞吐和部署灵活性,我们选定使用2节点16卡作为一个Prefill实例,4节点32卡作为一个Decode实例。为了部署时尽可能的灵活,这里选用的卡数较少,这使得整个系统采用较小规模的EP并行策略:每张卡上部署8(Decode)/16(Prefill)个路由专家和1个共享专家。在Decode阶段,MLA部分采用DP并行策略,通信方式采用AllGather/ReduceScatter方案。这种部署方式可以在卡数较少情况下依然达到相当可观的吞吐。值得一提的是,真实负载下AllGather/ReduceScatter比Dispatch/Combine的通信方案具有更好的性能表现。综合上述优化方案,我们实现了在100ms时延下单卡吞吐达到723∼808Tokens/s。 本文结构安排如下:在第2节简单介绍昇腾服务器相关的硬件信息,在第3节详细介绍两种不同机型下的部署方案,在第4, 5, 6节分别介绍框架层、模型层和算子层的优化技术,在第7节给出两种部署下的性能分析结果,最后列举一些当前部署方案后续要增加的特性和优化方案。 2昇腾服务器和组网 2.1昇腾芯片 昇腾NPU芯片是华为推出的一系列高性能AI处理器,专为大规模AI训练、高性能AI推理等任务设计。该系列芯片采用达芬奇架构[18],具备强大的计算能力和高效的能效表现,能够满足深度学习模型训练与推理、自然语言处理等多种应用场景的需求。该系列芯片分为多种型号,不同型号的性能不同,不同服务器会根据定位选用不同型号的芯片。 2.2Atlas 800I A2服务器 昇腾Atlas 800I A2推理服务器(下文简称为A2服务器或A2)一个节点包含8张NPU芯片,形成多机组网架构(图1),具有以下特点: •节 点 内 拓 扑:A2单 节 点 内8卡NPU通 过Fullmesh形 成 全 互 联 结 构, 通 信 总 带 宽392GB/s。 •节点间拓扑:A2节点间通过网络交换机进行互联,形成Stars结构,通信总带宽50GB/s。 图1: Atlas 800I A2服务器节点内和节点间组网。左图:A2节点内全互联;右图:多节点间通过交换机实现互联。 节点间通信时,由于不同卡上的数据汇聚到同一个网络通信接口上,共享总带宽。所以如果模型需要部署在多个节点上时,需关注节点间通信量和通信次数,减少节点间带宽对性能带来的影响。 2.3CloudMatrix 384超节点 CloudMatrix 384超节点(下文简称为CM384)是基于灵衢高速互联总线,满足AI时代海量算力需求的大规模超节点集群(图2)。CM384通过多卡紧耦合互联,统一内存编址,统一标识,统一通信等技术,实现算力、互联带宽、内存带宽的全面领先。因此,在CM384上进行网络部署时,子节