You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CUDA内核profiling时predicated-on相关Avg thread executed指标异常偏高如何解读

Avg Thread Executed 指标正确解读

首先原有0~32的合理区间认知存在偏差,该范围仅适用于单条机器指令单次在一个warp上执行时的predicated-on线程数统计。Nsight Compute源码行维度的Avg Thread Executed指标统计范围和计算逻辑如下:

  • 统计覆盖当前源码行对应的所有汇编指令,在内核全运行周期内所有warp的全部执行实例
  • 计算公式为 所有关联指令执行时的predicated-on线程总数 ÷ 该源码行对应指令的总调度次数

如果源码行处于循环结构中,或是被大量warp高频执行,该指标数值完全可以超过32。比如某行代码对应指令被100个warp各执行1次,单次执行时每个warp都有32个活跃线程,最终指标值就会达到3200,远高于32的单warp上限。

predicated-on线程数指单条指令单次调度时,满足谓词条件、未被掩码屏蔽、实际执行运算的线程数量,该数值直接反应单warp单次执行该指令时的线程利用率,数值越接近32说明warp内分支分化程度越低。

可基于该指标得出的结论
  • 若指标值远低于「源码行预估总执行warp数 × 32」,说明该行代码存在严重的warp内分支分化,大量线程执行时被掩码屏蔽,算力浪费严重,是分支优化的核心目标
  • 若指标值和「源码行预估总执行warp数 × 32」数值接近,说明该行代码的分支分化程度极低,线程利用率良好
  • 结合内核总耗时占比指标,若该指标数值很高同时对应行的耗时占比也高,说明该行属于内核热点执行路径,是性能优化的核心关注对象

内容的提问来源于stack exchange,提问作者John

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 19:39:03