昇腾社区首页
中文
注册

特性介绍

SplitFuse特性的目的是将长提示词分解成更小的块,并在多个forward step(即通过多轮更短的Prefill代替原本的单次Prefill)中进行调度,只有最后一块的forward完成后才开始这个提示词的生成。将短提示词组合以精确填充step的空隙,每个step的计算量基本相等,达到所有请求平均延迟更稳定的目的。

当MindIE在默认情况下使用PD混部策略,Prefill和Decode阶段请求不会同时被组合成一个batch。打开SplitFuse特性后,MindIE会在优先处理Decode请求的基础上,且batch小于maxBatchSize的情况下在同一批次中加入Prefill请求。

当该次处理的feedforward大于splitchunk tokens时,SplitFuse会对其进行切分,解释如下所示:

  • 每一推理轮次中:,其中:
  • Prefill阶段的tokens为输入token数量,Decode阶段每个请求的为1token:

其优势主要包括以下几点:

  • 提高响应速度:Prefill阶段和Decode阶段的请求可以同时进行批处理,减少长提示词处理延迟,提升用户体验。

  • 提升效率:该特性优先处理Decode请求,提供了更大的系统吞吐和更好的Decode时延。

  • 增强一致性:由于feedforward(前向传播)的大小一致,降低延迟波动,使生成频率更稳定。