CudaThrustカスタム機能での回答ありがとうございます
このような値をコピーするために別のベクトルを渡したい場合、最後にもう1つありますか?
for (i=0;i<n;i++)
for (j=0;j<n;j++)
y[i*n+j]=h1[i]*a1[pos*n+j];
作成された関数に値を渡す方法はまだわかりません。ありがとうございます。
CudaThrustカスタム機能での回答ありがとうございます
このような値をコピーするために別のベクトルを渡したい場合、最後にもう1つありますか?
for (i=0;i<n;i++)
for (j=0;j<n;j++)
y[i*n+j]=h1[i]*a1[pos*n+j];
作成された関数に値を渡す方法はまだわかりません。ありがとうございます。
thrust::transform(
thrust::make_permutation_iterator(h1.begin(),
thrust::make_transform_iterator(thrust::make_counting_iterator(0),
IndexDivFunctor(n))),
thrust::make_permutation_iterator(h1.begin(),
thrust::make_transform_iterator(thrust::make_counting_iterator(0),
IndexDivFunctor(n))) + n * n,
thrust::make_permutation_iterator(a1.begin(),
thrust::make_transform_iterator(thrust::make_counting_iterator(0),
Indexa1Functor(n, pos))),
y.begin(),
thrust::multiplies<double>());