GPUが同じカーネルを何回も実行するかどうか不思議でした。OpenCL実行モデル複数のキューに入れられたカーネル
私は数百回(おそらく数千回)連続してキューに入れられているカーネルを持っています。そして、AMD App Profilerを使用して、カーネルのクラスタを非常に速く実行することに気づきました。 "ハング"(つまり、実行するには時間がかかります)。私はそれが64番目のカーネルだと思います。
これは、カーネルを通じて毎回同じローカルおよびグローバルサイズで全く同じ操作を実行するため、これは奇妙です。私は同じバッファを再使用しています。
私が逃している実行モデル(おそらく他のプログラム/ GPUにアクセスするOSやGPUメモリのタイミング周波数)については何かありますか?私はこれを、Windows 7(64ビット)のATI HD5650カードと、イン・オーダーのキュー実行を伴うAMD App SDK 2.5でテストしています。
カーネルにグローバルメモリアクセスがない(あまり実用的ではない)場合、プロファイラは速い実行カーネルとそれ以前の遅い実行カーネルとの間にギャップを置きます今では私のカーネルのどれも実行されていない大きな空のギャップです。
フォローアップの質問として、これを修正するためにできることはありますか?