我想使用一些外部库(http://trac.osgeo.org/geos/)对几何对象(GIS)执行一些分析任务.我想在Cuda上使用OpenCL执行这些任务,这样我就可以使用GPU的并行功能在大量数据上并行执行这些任务.所以我的问题是:
我可以使用这些库编写内核吗?
另外,我如何将这些库的复杂数据结构的对象作为参数传递给内核/(具体如何创建这些复杂对象的缓冲区?
一个OpenCL的节目大多是由两个部分组成
它是高达主机代码编译/设置内核,取出/从任何库/源建立的数据,转换为相应的标量,矢量或其他数据类型在OpenCL的内核允许的,运行内核(多个)其处理数据并将结果从计算设备返回给主机(如果需要),然后将这些简单数据类型转换回其他代码消耗所需的任何形式.
所以不 - 你不能直接在内核中使用常规的C++库.但是你可以在主机代码中做任何你想做的事情.
| 归档时间: |
|
| 查看次数: |
1814 次 |
| 最近记录: |