CUDAの統合メモリ機能を使用すると、変数がmanaged
メモリに格納され、コードが少し簡単になります。メモリはスレッドブロック内のスレッド間で共有されます。セクション3.2を参照してくださいCUDA Fortran.cudaの共有メモリと管理対象メモリの変数
私の質問は、shared
とmanaged
の両方のメモリにある可能性がありますか?ホスト内ではmanaged
となりますが、デバイス上ではshared
となります。このタイプの変数にはどのような振る舞いが予想されますか?
私はCUDA Fortranを使用しています。この質問は、変数をmanaged
と宣言するとコード化が容易になりますが、デバイス内でshared
にすると、グローバルデバイスのメモリよりも速くなります。
私はドキュメントに決定的な答えを与えたものは見つかりませんでした。
CUDAで管理または固定されている変数を「宣言」することはありません。 – talonmies
私はそこにいると思います:[doc](http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#um-unified-memory-programming-hd)引用「最後に、言語の統合 " – rohand
* GPU *宣言された変数のために、管理されたアドレス空間にマップする権利があります。しかし、それはあなたが求めていることではありません。固定された/ページロックされたメモリはホストメモリで、あなたはホストメモリについての質問です。そこには宣言構文はありません。ホストメモリが管理されているか固定されているかは、割り当てたAPIによって異なります。 – talonmies