[问题] CUDA 座标求算距离问题(已解决)

楼主: okokokla2001 (okla)   2014-05-04 14:47:56
[36m开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
VS2010
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
[36m问题(Question):
我想利用Cuda里面,block与thread来求算二维座标各点之间的距离,再回传给cpu
,再由CPU选出前五小的pair
想法:假设有N个点,则会有个N^2大小的距离矩阵
   舍去矩阵上三角为对称与对角线为自己与自己的距离
   只要确实算出剩下的pair的距离就好
所以我另blocknumber与threadnumber都为N
故则有N^2个thread在执行距离求算
   而我也用blockindex当local点 threadindex当欲求算距离的点
   矩阵上三角与对角线,因为我要选最小则给它们mark一个很大的数
最终cuda device端会把 (blocknumber*threadblock)笔资料写回host
现在问题是不知道哪个环节出错了,导致写回host的资料
选出前五小的结果出问题:http://ppt.cc/5LnQ
   已经看改了很多次还是找不出问题orz..
小弟第一次写Cuda 烦请各位多多指导感谢!~
喂入的资料(Input):
预期的正确结果(Expected Output):
错误结果(Wrong Output):
[36m程式码(Code):(请善用置底文网页, 记得排版)
http://codepad.org/5q7wdK
补充说明(Supplement):
作者: kiedveian (极地之星光)   2014-05-04 15:13:00
cudaMemcpy(gpudataX
楼主: okokokla2001 (okla)   2014-05-04 15:20:00
感谢K大! 把&去掉已经可以正常运行了

Links booklink

Contact Us: admin [ a t ] ucptt.com