Я получаю сообщение об ошибке при попытке доступа к элементу-члену структуры из моего device_vector. Я получаю ошибку: error: класс «thrust :: device_reference» не имеет члена «nums». Код для структуры и функтора приведен ниже.
struct mystruct
{
vector<int> nums;
}
struct functor
{
private:
thrust::device_vector<mystruct> mystrct;
public:
functor(thrust::device_vector<mystruct> Mystrct):
mystrct(Mystrct){}
__host__ __device__ float operator()(double rand)
{
float xnew;
for(int i=0; i<1000; i++)
{
for(int j=1; j<100; j++)
{
xnew += rand*mystrct[i].nums[j]; //ERROR IS HERE!
}
}
return xnew;
}
};
Задача ещё не решена.
Других решений пока нет …