cuda カーネルでcuda-11.2 nsight-computeを実行しました。
SOL SM は 79.44% であると報告されており、私はこれを最大値にかなり近いと解釈しています。SOL L1 は 48.38%
ルーフラインチャートを調べると、測定結果がピーク パフォーマンスから大きく離れていることがわかります。
達成: 4.7 GFlop/s.
ルーフラインでのピーク: 93 GFlop/s 程度。
また、ALU パイプの使用率が 80% 以上であることもわかります
では、ALU パイプが十分に活用されている場合、ルーフライン チャートによると、達成されたパフォーマンスがこれほど低いのはなぜでしょうか?
これは RTX 3070 上にあり、17.6 TFlop/s の単精度でピークに達することに注意してください。
アップデート
ここで何が起こっているのか理解できたと思います... @robert-crovellaは、ALUが整数演算であるため、含まれていないことを示す正しい軌道に乗せました。そして、それらは含まれていない唯一の操作ではありません!
ルーフライン チャートには、fp32 および fp64 操作のみが表示され、fp16 操作は表示されません。
私のコードは半精度浮動小数点数で動作するため、ルーフライン チャートが私のコードには適用されないのではないかと思います。