【发布时间】:2020-12-28 03:54:56
【问题描述】:
flop_count_sp:非谓词线程(加法、乘法和乘法累加)执行的单精度浮点操作数。每个乘法累加操作都会为计数贡献 2。该计数不包括特殊操作。
inst_fp_32:非谓词线程(算术、比较等)执行的单精度浮点指令数
我有一个带有探查器输出的内核,可以添加如下内容:
flop_count_sp = flop_count_sp_add + flop_count_sp_mul + 2 * flop_count_sp_fma
inst_fp_32 = flop_count_sp_add + flop_count_sp_mul + flop_count_sp_fma
鉴于这些指标中的数字,我想知道这里的操作和指令是什么?看起来fma 是一个指令,但两个操作。而add 和mul 是一个指令和一个操作。由于 SASS 程序集由分析器计算。是否有任何指令不计为操作?或相反亦然。我只想了解 nvprof 和 nvvp 指标的上下文。
另外,当我们谈论 TFLOP/s 的峰值性能时,我猜这里的 OP 对应于操作?如果我想估计诸如计算到全局内存访问 (CGMA) 之类的东西,我应该使用 flop_count_sp 而不是 inst_fp_32 作为计算部分吗?提前致谢。
【问题讨论】:
标签: cuda gpu profiler nvprof nvvp