2

gpu (デバイス) メモリ内のカーネル コード (実行) がどのくらいのメモリを占有しているかを調べる方法はありますか? 512 MB のデバイス メモリがある場合、割り当て可能な容量を知るにはどうすればよいですか? ビジュアル プロファイラはそのような情報を表示できますか?

4

1 に答える 1

1

プログラムコードはほとんどメモリを消費しません。残りのCUDAコンテキスト(ローカルメモリ、コンスタントメモリ、printfバッファ、ヒープ、スタック)はさらに多くを使用します。CUDAランタイムAPIには、cudeGetMemInfoコードで使用可能な空きメモリの量を返す呼び出しが含まれています。断片化とページサイズの制約により、メモリの最後の空きバイトをすべて割り当てることができないことに注意してください。最善の戦略は、最大値から始めて、割り当てが成功するまで、より小さな割り当てを再帰的に割り当てようとすることです。

同様の行に沿った以前の質問に対する私の回答で、デバイスのメモリ消費のより完全な説明を見ることができます。

于 2012-04-09T17:14:12.387 に答える