OpenCL扫码

OpenCL scan code

我正在寻找 OpenCL 中 scan(prefixsum) 的快速实现。我发现的最好的东西是在 Nvidia SDK 中,但它很旧(2010)。 有谁知道 OpenCL 中 Scan 的任何其他实现?

如果您的设备支持 2.0,则使用内置操作。

http://developer.amd.com/community/blog/2014/11/17/opencl-2-0-device-enqueue/

OpenCL 中有几种扫描操作的开源实现:

  • CLOGS,一个用于 OpenCL C++ API.
  • 之上的高级操作的库
  • Boost.Compute,一个用于 OpenCL 的 C++ GPU 计算库。
  • VexCL, OpenCL/CUDA.
  • 的C++向量表达式模板库
  • Bolt,为GPU优化的C++模板库

CLOGS 的作者写了一篇paper比较这些实现中扫描(和排序)操作的性能。