1

割り当てる方法はcudaArrays? 特に 1D 配列の割り当てに興味があります。割り当て後、その単純な要素にアクセスする方法は? プログラミング ガイドを読みCUDAましたが、完全には理解できません。誰でもサンプルコードで説明できますか。cuda1Darray の使用は推奨されますか?

4

1 に答える 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 方向の要素数です。

カーネルでは、この配列の要素にtex1Dortex2D関数を使用してアクセスできます。cudaArray は、これらの関数を使用してデバイス コード内でのみ読み取ることができます。

于 2012-09-22T16:37:12.977 に答える