Pascal SM每个SM有4个调度器,当我们得到类似3的东西作为IPC时,这是否意味着SM在一个周期中调度了3条指令?此外,NVPROF是否考虑该内核的所有SM的IPC的平均值并报告它?
如果一个SM的IPC为3,那么一个具有2个SM的GPU应该给我们6的IPC,对吧?
此外,我正在使用一个名为GPGPU-sim的模拟器,它报告更高范围(80-120(的IPC我假设他们正在计算每个核心的IPC,并将度量缩放到整个模拟GPU,但我不确定。
有人能验证IPC指标吗?
NVPROF ipc度量计算为SUM(sm_inst_executed(/SUM(sm_active_cycles(
这导致单个SM的平均IPC。Maxwell/Pascal SM的最大SM IPC为6。Volta/Turing SM的最大SM IPC为4。
sm_inst_executed—在指令必须完成时执行的扭曲指令数(由于推测性执行而无法回滚(。对完全谓词为off的指令进行计数。
sm_active_cycles-sm至少有1个活动/驻留扭曲的周期数。
NVIDIA Perfworks提供以下指标:
sm[sp]__inst_executed_{avg,sum}每个{active,perated}_cycle。
sum变量是总IPC(最大值为SM_COUNT*SM_max_IPC(_avg变量是平均IPC(SUM(sm__inst_executed(/SUM(sm__{active,perated}_cycle((elapsed_cycles变量包括SM未激活的周期。