问题标签 [thrust]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1465 浏览

cuda - 如何更改 CUDA 的链接目录?

我已经使用 CUDA 4.0 一段时间了。我最近下载并复制了 CUDA 4.1 新 API(我需要 Thrust 的 lambda 表达式支持),但我的解决方案的属性仍然链接到旧的 4.0 API。如何动态更改它?我的猜测是我需要更改$(CudaToolkitLibDir)变量,但究竟如何?

编辑:我问这个是因为我正在尝试使用推力::占位符

0 投票
1 回答
1453 浏览

cuda - 推力::device_vector 错误

我是推力新手。我正在尝试从 a 复制thrust::host_vector到 a thrust::device_vector,这两种类型Sequence都是我已经实现的类。

但是,我确实收到错误“无效的设备功能”。我在 GeForce GT 540 上使用 CUDA 4.0 VS2010。

有人可以帮忙吗?

0 投票
1 回答
714 浏览

cuda - 使用推力::最小推力没有提供预期的结果

考虑以下代码,当 p 是在 GPU 端分配的指针时。

在 cpu 端应用相同的东西之后。

我明白了!= fRes。我在这里做错了什么?

0 投票
1 回答
939 浏览

cuda - 推力:如何返回活动数组元素的索引

如何使用推力返回活动数组元素的索引,即返回数组元素等于 1 的索引向量?

对此进行扩展,在给定数组维度的多维索引的情况下,这将如何工作?

编辑:目前该功能看起来像这样

哪个给出了错误

0 投票
2 回答
378 浏览

cuda - 是否可以一次包含所有 Thrust 标头?

有没有办法包含所有 Thrust 文件而不是单独执行?例如,现在我必须执行以下操作:

我只想使用类似的东西

这可能吗?

0 投票
1 回答
537 浏览

gpu - 推力排序的步复杂度和唯一的推力

我在推力中使用排序和唯一按键功能。我只是想知道推力中排序函数的步长复杂度是多少,以及唯一按键函数的工作和步长复杂度是多少。

根据我的知识,我认为排序的工作复杂度是 O(NlogN)。但我不知道 unique_by_key 操作是什么

0 投票
1 回答
266 浏览

cuda - 就地推力::min_element

我查看分析结果并看到thrust::min_element()调用cudaMalloc(),因此使用了额外的内存。减少后我不需要数组数据,因此更愿意就地找到最小元素。可能吗?

0 投票
2 回答
2446 浏览

iterator - 当键是 zip_iterator 使用自定义比较谓词处理的元组时,CUDA Thrust sort_by_key

我在这里查看了很多类似的问题,并且有很多问题,尽管有一个微小的变化。我正在尝试使用 zip_iterator 作为复合键对值进行排序。

具体来说,我有以下功能:

和这个自定义谓词:

我得到的错误是:

有什么想法可能导致这种情况/我如何编写一个确实有效的谓词?

提前致谢, 内森

0 投票
1 回答
1390 浏览

cuda - 推力函子:“启动请求的资源过多”

我正在尝试在 CUDA 中实现类似的东西:

对于每个元素

wherefloorz是在测试开始时配置的常量。

我试图像这样实现它,但我收到错误“请求启动的资源太多”

一个函子:

由变换使用:

如果我删除我的仿函数的一个成员,比如说floorVal,并使用一个只有一个成员变量的仿函数,它就可以正常工作。

有谁知道为什么会这样,我该如何解决?

附加信息:

我的数组长 786432 个元素。

我的 GPU 是 GeForce GTX590

我正在使用以下命令进行构建:

我的 cuda 版本是 4.0:

我每个块的最大线程数是 1024(由 deviceQuery 报告):

更新::

我偶然发现了解决问题的方法,但不明白。如果我将我的仿函数从“floor_functor”重命名为基本上其他任何东西,它就可以工作!我知道为什么会这样,并且很想听听任何人对此的想法。

0 投票
2 回答
2217 浏览

cuda - 使用设备中的阵列在 CUDA 上并行减少

我需要执行并行缩减以找到 CUDA 设备上数组的最小值或最大值。我为此找到了一个很好的库,称为 Thrust。您似乎只能对主机内存中的数组执行并行缩减。我的数据在设备内存中。是否可以减少设备内存中的数据?我不知道该怎么做。这是 Thrust 的文档:http ://code.google.com/p/thrust/wiki/QuickStartGuide#Reductions 。谢谢大家。