产品
产品中心
< 返回主菜单
产品

交换机

交换机所有产品
< 返回产品
交换机
查看交换机首页 >

无线

无线所有产品
< 返回产品
无线
查看无线首页 >

云桌面

云桌面产品方案中心
< 返回产品
云桌面
查看云桌面首页 >

安全

安全所有产品
< 返回产品
安全
查看安全首页 >
产品中心首页 >
行业
行业中心
< 返回主菜单
行业
行业中心首页 >

技术盛宴 | 浅谈LLM推理性能的影响因子——HBD Size

作为GenAl时代的全栈服务专家,锐捷网络致力于为企业提供覆盖laaS到PaaS的全栈产品及解决方案。

  • 发布时间:2024-05-31

  • 点击量:

  • 点赞:

分享至

我想评论

随着LLM(大语言模型)技术的飞速发展,市面上出现越来越多的AGI应用,对话式机器人作为最普遍的应用已经深入普罗大众的工作和学习中。最显著的改变就是从搜索引擎查询问题,转变为打开多款对话式机器人的APP进行查询,然后再综合多个解答进行自己的判断。

那么,“对话式机器人”这类应用是如何根据用户的输入,来进行有逻辑的高质量内容输出的呢?其本质是:先通过大量的“训练”任务使其具备能够理解用户语言、逻辑和思维的能力,再通过用户给出的输入进行“推理”运算,进而输出对应的内容与用户进行高质量互动。 

一、训练与推理的关系

LLM(大型语言模型)的训练和推理是模型生命周期中的两个关键阶段,我们可以类比成理论学习和应用实践的结合。

1.训练阶段(学习阶段):

该阶段是模型构建的基础,决定了模型的质量和应用效果。

1)在训练阶段,LLM通过大量的文本数据学习语言的模式、语法、语义和上下文信息。

2)使用深度学习技术,如神经网络,模型在训练过程中不断优化其参数,以提高对文本数据的建模能力。

2.推理阶段(应用阶段):

该阶段不涉及参数更新,将训练学到的知识应用到实际问题上。

1)推理阶段是指使用训练好的模型对新的输入数据进行处理,以生成输出或做出决策的过程。

2)在推理过程中,模型会接收新的文本输入,预测或生成文本,执行翻译,或者完成其他特定的NLP任务。

3.差异性:

1)目标:训练和推理都旨在实现模型的最佳性能,但训练侧重于学习,推理侧重于应用。

2)可用性:训练阶段的效果会直接影响推理阶段结果的可用性。

3)资源消耗:训练通常需要大量的计算资源和数据,而推理则更注重实时性、成本和可扩展性。

4)持续学习:推理阶段的反馈可以用于改进模型,通过持续学习或增量学习的方式,使模型适应新的数据和场景。
 

二、推理的过程

主流 LLM 基本都是 Decoder Only 的 Transformer 模型,推理过程可以分为两个阶段:

 

Transformer 模型结构图 

Transformer 模型结构图

 

1.“预填充(Prefill)”阶段:

Prefill阶段是模型根据用户输入的Tokens通过一次前向传播来生成第一个输出 Token。在前向传播过程中,输入的Tokens之间以并行方式执行运算,所以具备比较高的执行效率。

2.“解码(Decoding)”阶段:

在Prefill阶段生成第一个 Token(A)之后开始进入Decoding阶段。在Decoding阶段中,解码器会以自回归的方式逐个生成输出序列的词元。在每一步,它基于已生成的词元和之前的状态来预测下一个词元,直到生成一个特殊的 Stop Token(或者满足用户设置的某个限制条件,比如超过一定的长度) 生成过程就会停止。Decoding阶段需要执行多次前向传播,而且只能以串行的方式执行,因此效率相对比较低。

两个阶段对算力芯片的要求也不同,Prefill阶段为计算密集型,适合选用高算力 GPU;Decoding阶段为访存密集型,相应的可以使用算力不是特别强而访存带宽比较大的 GPU。

 

三、推理的评估指标

针对 LLM 推理服务通常有两种调用模式,如下表所述:

 

针对 LLM 推理服务通常有两种调用模式

 

类似ChatGPT 一样的 Streaming 方式,目前应用比较广泛,主要因为可以给用户带来更好的交互体验,不需要长时间等待即可获得系统反馈,因此本文以Streaming模式下的评估指标来进行分析。

1.首个词元生成时间(Time To First Token,简称TTFT):

在用户输入查询的内容后,模型生成第一个输出token所需要的时间。

2.单个输出词元的生成时间(Time Per Output Token,简称TPOT):

推理系统根据用户请求生成后续词元所需要的平均时间。在人机实时交互的过程中,让用户得到快速的响应至关重要,延时较高会让客户陷入较长的等待时间,大大影响交互体验,但只要生成速度大于人类的阅读速度就能获得很好的用户体验。

3.Decoding吞吐:

通常用来衡量推理服务器在decoding阶段的输出效率,即decoding阶段的所有Token数量除以该阶段所需要的耗时。

4.单卡吞吐:

通常用来衡量推理服务器完成本次推理任务的输出效率,即在Prefill阶段以及decoding阶段总共生成的Token数量除以整个推理任务所需要的耗时。

 

四、推理性能的影响因素

影响LLM推理性能的因子有许多,本文重点分析不同HBD Size域在不同集群规模以及不同计算精度下对推理性能的影响。

1.计算精度:

指浮点数(Floating Point Numbers)的不同精度,比如FP16、FP8、FP4。

2.实例规模:

完成本次推理任务所需要的GPU卡数量。

3.HBD (High Bandwidth Domain)Size:

一个推理实例内,通过独立的高速通道形成全联接的GPU卡的数量。(跨服务器通过交换柜互联也算同一个HBD)

我们基于理论建模的和仿真算法,通过控制变量的对比方式,在保证单一因子变化的前提下去分析计算精度、集群规模以及HBD Size对推理性能的影响。

测试模型采用B200算力卡进行模拟仿真,基于QWen 110B的基础上扩展16个MoE专家,Batch Size为16,Token输入序列为32K,同时假设HBD内通过1.8TB/s的双向带宽互联。

 

HBD (High Bandwidth Domain)Size 

如上图数据所示,发现以下现象:

64张B200的GPU卡规模下,组成该推理实例时。在上述模型推理中,HBD Size从8提升至64,TTFT最大下降46%,单卡吞吐最大提升41%。

因此可以得出结论:HBD Size对推理性能有正面作用,即高速互联的GPU卡数量越多,推理性能越强。

 

HBD (High Bandwidth Domain)Size

 

如上图数据所示,发现以下现象:

128张B200卡的GPU规模组成推理实例时,在上述模型推理中,HBD Size从8提升至128,TTFT最大下降57%,单卡吞吐最大提升59%;同样证明HBD Size的提升对推理性能有正面作用。

对比上述两份数据,发现以下现象:

从64卡扩展到128卡规模时,TTFT指标从下降46%变化为下降57%,收益更明显;再如单卡吞吐从提升41%变化为提升59%,收益更明显。

因此可以得出结论:当采用更大规模GPU卡时,HBD Size扩增时性能收益提升趋于明显。

 

HBD (High Bandwidth Domain)Size

 

从上述表格数据中,我们发现以下现象:

同为128卡规模下,FP16精度下随着HBD Size提升,Prefill与Decoding阶段的通信时间占比逐步下降,这种现象在FP8和FP4精度下也同样存在。

当采用更低计算精度时,FP16精度下从8卡提升到128卡,单卡吞吐提升倍率为1.36;而在FP4精度下从8卡提升到128卡,单卡的吞吐提升倍率为1.63。

因此可以得出结论:在更低的计算精度下,HBD Size扩增时性能收益提升趋于明显。

五、结论

1、在相同集群规模和同样的计算精度下,随着HBD Size的提升,推理性能也随之提升。具体表现为TTFT降低,Decoding吞吐及单卡吞吐提升。

2、在相同计算精度下,集群规模越大,HBD Size的提升收益愈发明显。具体表现为TTFT降低幅度更大,Decoding吞吐及单卡吞吐提升幅度更大。

3、在相同集群规模下,计算精度越低,HBD Size的提升收益愈发明显。具体表现为Prefill与Decoding阶段的通信时间占比逐步下降幅度越慢,单卡吞吐提升倍率幅度越大。

锐捷网络,作为GenAI时代的全栈服务专家,致力于为企业提供覆盖IaaS到PaaS的全栈产品及解决方案。我们的产品覆盖高性能网络与GPU算力优化调度,旨在通过创新技术解决方案,帮助客户实现生产效率的飞跃与运营成本的优化。我们坚信,通过我们的努力,能够为客户打造一个更加智能、高效和可靠的未来。让我们携手,共同探索GenAI时代的每一个机遇。

相关标签:

点赞

任何需要,请联系我们

返回顶部

请选择服务项目
关闭咨询页
售前咨询 售前咨询
售前咨询
售后服务 售后服务
售后服务
意见反馈 意见反馈
意见反馈
更多联系方式