在CUDA中相互减去矢量的元素

时间:2016-07-16 06:12:46

标签: c++ cuda

我在CUDA中有一个向量(x_dev),它有B个元素并且是双重类型。 我正在寻找最好的方法,从下一个元素中减去每个元素,并覆盖向量。 (我不关心最后一个元素。)

基本上,这个c ++代码的对应部分:

for(int i = 0; i < B-1; i++)                           
    x_dev[i] = x_dev[i] - x_dev[i+1];

1 个答案:

答案 0 :(得分:1)

您可以使用thrust::transform

thrust::transform(x.begin(), x.end()-1, x.begin()+1, x.begin(), _1 - _2);