我对CUDA编程很新,所以如果这是一个愚蠢的问题,请原谅我。
在CUDA中,我正在尝试使用大型设备阵列A(约2000万int
个元素)的内容填充小型设备阵列B(~20000 int
个元素)。 A主要包含零,但有大约20000个非零元素,位于数组中的随机和未知位置。我想使用CUDA向B填充A的非零内容。 B中元素的顺序并不重要。
我查看了SDK,我找到了一些“减少”策略,例如,对数组进行并行求和,但是这些方法中的每一种都将数组减少为标量,而我试图“减少” “一个较小阵列的数组。在线搜索也没有产生任何结果。我不是在寻找完整的代码,而是一些如何实现这一点的想法/链接。我正在使用C,如果可能的话,我想在不使用任何C ++类或结构的情况下执行此操作。
提前感谢您的协助。