【发布时间】:2014-06-04 23:30:05
【问题描述】:
我已经制作了一个用于计算直方图的代码的串行版本,并且我知道该算法有效。问题是,当我在 CUDA 中执行此操作时,我得到的唯一结果都是 0。我可以将输入数组 dev_x 复制到输出变量 h 中,并且能够看到 x 的输入值。
输入数据是x和y位置的列表,对应的颜色(int从1到5)
参数是输入文件名、输出文件名、cellWidth和cellHeight,其中 cellWidth 和 cellHeight 是输入划分的区域数。一个 1000000 X 1000000 的数组被划分为 1000 X 1000 个区域。我需要计算每个区域中每种颜色的出现次数。
【问题讨论】:
-
将proper cuda error checking 添加到您的代码中,您可能会知道哪里出了问题。
-
除了错误检查点之外,如果您的代码是独立的,那就太好了。现在,它需要一个文件,并且需要了解除了您之外没有人可以访问的所需命令行参数和值。我不能/不知道如何运行你的程序,所以我看不到它做了什么或使用任何标准诊断工具来找出可能出错的地方。没有它,我看不到任何人实际上可以回答这个问题。投票结束。
-
@RobertCrovella - 我今晚一回家就会添加错误检查。感谢您的建议。
-
@talonmies - 我添加了输入参数和输入文件的描述。
-
@dead_jake:你是在告诉我,要运行你的程序,我应该创建自己的包含数十亿行的输入文本文件并运行你的代码?你觉得这合理吗?