割り当てる方法はcudaArrays
? 特に 1D 配列の割り当てに興味があります。割り当て後、その単純な要素にアクセスする方法は? プログラミング ガイドを読みCUDA
ましたが、完全には理解できません。誰でもサンプルコードで説明できますか。cuda1Darray の使用は推奨されますか?
質問する
4110 次
1 に答える
2
cudaArray は、テクスチャ フェッチ用に最適化された特別な構造です。次のように 1D cudaArray を割り当てることができます。
cudaArray* arr;
//Create Channel Descriptor. float is just for example. Change it to required data type.
cudaChannelFormatDesc channel = cudaCreateChannelDesc<float>();
//Allocate Memory
cudaMallocArray(&arr,&channel,Number_Of_Elements, 1,cudaArrayDefault);
幅と高さは、x 方向と y 方向の要素数です。
カーネルでは、この配列の要素にtex1D
ortex2D
関数を使用してアクセスできます。cudaArray は、これらの関数を使用してデバイス コード内でのみ読み取ることができます。
于 2012-09-22T16:37:12.977 に答える