ちょっと、そこ、 私は現在Mexファイルを開発していますCUDA計算を含むmatlab。例えば、入力パラメータが特定のサイズを超えていないときに、共有および/または定数メモリを使用しようとすると、ユーザーからの任意の入力パラメータ用にプログラムを "自動的に"最適化する良い方法があるのだろうか。一定の限界までしか働かない。そこから、グローバルメモリを使用する必要があります。しかし、このような最適化は、ユーザーからの入力パラメータのサイズを知ることができる点で、実行時にのみ行うことができます。 ありがとう!
回答:
回答№1は2異なるカーネルを記述し、実行時にどのカーネルを呼び出すかを決めることができます。
また、デバイスクエリAPIを使用することもできます実行時に共有/定数メモリのサイズを把握するためのマイクロベンチマーク。これは、特定のGPUモデルを想定したくない場合にはおそらく必要です。