2016-07-08 25 views
1

CUDAアーキテクチャのプログラミングでは、デバイスリソースがあまりにも限られているという問題がありました。つまり、スタックとヒープが小さすぎます。CUDAアーキテクチャのプログラミング

これについて調べているうちに、スタックサイズを大きくする関数と同様のヒープの関数を見つけました。 cudaDeviceSetLimit(cudaLimitStackSize, limit_stack) しかし、その寸法は依然として限定されている。

デバイスの詳細情報を保存するにはどうすればいいですか?

+3

達成したいことを説明するコードを表示できますか?制限を変更する必要があることは珍しいことです。 – kangshiyin

答えて

3

便宜上、スタックとヒープは提供されています。しかし、あなたのgpuが最近のものであれば、デバイスにcudaMallocを使ってメモリを割り当てることができます。その場合、上限はgpuオンボードメモリです。

さらに多くのシステムメモリを管理し、gpuと共有するカスタムメモリ割り当てが必要です(cudaHostRegisterを参照)。次に、制限はシステムメモリになります。

+1

ありがとうございます。今まで私はcudaHostAllocを使用していました。私はcudaHostRegister関数を試してみます。 – raducu2205

関連する問題