使用CUDA推力的元素动力操作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用CUDA推力的元素动力操作相关的知识,希望对你有一定的参考价值。

有没有办法用pow函数转换推力矢量?换句话说,我想将矢量的每个元素x转换为pow(x,a)a是常数。

答案

有关如何使用初始化参数编写仿函数,请参阅“推力快速入门指南”中的qazxsw poi。

Section Transformations
另一答案

这是一个完整的例子。正如@Eric所提到的,所需要的只是定义自己的幂函子并使用struct saxpy_functor { const float a; saxpy_functor(float _a) : a(_a) {} __host__ __device__ float operator()(const float& x, const float& y) const { return a * x + y; } };

thrust::transform

以上是关于使用CUDA推力的元素动力操作的主要内容,如果未能解决你的问题,请参考以下文章

您如何构建示例 CUDA 推力设备排序?

解决推力/CUDA 警告“无法分辨指针指向的...”

将二维推力::device_vector 复矩阵传递给 CUDA 核函数

Exclusive_scan 中的 CUDA 推力推力::system::system_error

在 CUDA 中混合自定义内存管理和推力

在我的机器上操作大向量时,CUDA 推力很慢