インテルのみ表示可能 — GUID: saz1474984501691
Ixiasoft
4.3.4.5. ノーストール、低占有率、低帯域幅効率
ループに依存する依存関係は、LSUまたはチャネルの占有率が低く、帯域幅が狭くなる原因となるボトルネックとなります。
要確認: 理想的なカーネル・パイプライン条件は、ストール・パーセンテージが0%、占有率が100%、ボードの使用可能帯域幅に等しい帯域幅を持ちます。
図 71. OpenCLカーネルとプロファイラ解析の例
この例では、dst[]は、 FACTOR2ループの20回の反復とFACTOR1ループの回4回の繰り返しが実行されます。したがって、FACTOR2ループがボトルネックの原因となります。
ループボトルネックを解決するソリューションは以下の通りです。
- FACTOR1をアンロールし、 FACTOR2は均等にループします。 FACTOR1ループをさらに展開するだけでは、ボトルネックは解消されません
- カーネルをベクトル化し、各ループ反復中にMultiple Work-Itemを実行できるようにする
関連情報