2012-09-12 6 views
5

推力ライブラリでpush_backを使用することはできますか?ベクトルのベクトルはどうですか? device_vectorsの配列を作成する方法について推力ライブラリを使用したpush_back

thrust::device_vector<thrust::device_vector<int>> d_vec(4); 

と何を:

vector< vector<int> > MyVector(100); 
... 
MyVector[i].push_back(j); 

は、例えば同じようにそれを使用する方法はあります:私は、CPUであるものをGPUで使用したいですか?出来ますか?

答えて

4
  1. はい、thrust::device_vectorはちょうどstd::vectorようpush_back方法があります。
  2. いいえ、にはdevice_vectorsを含めることはできません。推力のような機能が必要な場合は、thrust::zip_iteratorを参照することをお勧めします。一連の異なるベクトルやイテレータへのアクセスのような「構造の配列」を提供できます。
+0

'device_vector dv'へのアクセスは、' dv [i] [j'] – Manolete

+0

です。@Manolete:これは可能だとは思いません。 – talonmies

+0

しかしあなたはdv [i * width + j]を行うことができます。 – harrism

関連する問題