昇腾社区首页
中文
注册

显存瓶颈分析案例

问题现象

DeepSeek双机服务化推理时,实际batch size无法达到192。

分析

  1. 采集服务化性能数据。
  2. 组到192 batch size时,随着decode增加,decode推理到185次时,可以看到kv block即将用尽,剩余36(初始1747);随后剩余的kv block降低到0,batch size降为72,降低前最后的192 batch size推理到253长度。
    图1 查看数据
  3. 从实际的执行来看,batch size=150的情况下,可以执行到decode接近1k。
    图2 实际执行
  4. 按照理论计算的方法,可以是1747*2*((1k+2k)/128),约为145。

    block数量 /((输入长度+输出长度)/cacheBlockSize)。

    图3 block数量
  5. 调整服务化参数,export NPU_MEMORY_FRACTION=0.96,maxSeqLen降低到3K,达到最优效果。