私は推力を持っていdevice_vector
ます。カーネルに渡すことができるように、生のポインターにキャストしたいと思います。どうすればそうできますか?
thrust::device_vector<int> dv(10);
//CAST TO RAW
kernel<<<bl,tpb>>>(pass raw)
を使用してこれを行うことができますthrust::raw_pointer_cast
。デバイス ベクター クラスには、次のようなキャスト可能なベクターが保持するメモリにdata
a を返すメンバー関数があります。thrust::device_ptr
thrust::device_vector<int> dv(10);
int * dv_ptr = thrust::raw_pointer_cast(dv.data());
kernel<<<bl,tpb>>>(dv_ptr)
(免責事項: ブラウザーで記述され、コンパイルもテストもされていません)。スラストに含まれるこれの完全な動作例があります: unwrap_pointer.cu