用户
 找回密码
 立即注册
Jeffrey 该用户已被删除
发表于 2013-10-21 17:46:13
1817112
上一集回顾: 之前在16*16*16 、32*32*32、64*64*64网格下采用cuda ,各种计算不同,很混乱。
                       采用恒大和ice的建议,从自己cpu入手,找到了错误。的确是自己cpu程序的原因。



本集请教:
       目前已有的基础是:(1)自己CPU程序 无误
                                       (2)自己GPU 程序在16*16*16和32*32*32  2个维度下计算,均没有问题。
                                                (计算多次,5000步,且计算结果和相同参数下的CPU一致)


      问题:(1)在计算64*64*64的网格下,出现很随机的现象。
                           比如,有时候第一步算就 不收敛;然后自己关闭 不收敛的程序,然后在程序里面打了一个空格,再去运行,此时第一步就收敛了!
                         再比如:如果第一个都收敛,有时候200多步就又不收敛了。有时候1000多步不收敛。

                       所以在想这事什么原因呢?为何64网格下如此随机,32位确很正常???

                (2)大神给点建议,好吗? 谢谢!


PS:(1)不收敛指的是求解稀疏矩阵AX=b不收敛。
        (2)配置: 笔记本NVS4200M, VS2010+ cuda4.0, win7 64位。
        (3)采用的是双精度


希望没有下一集了。(但概率是0)
使用道具 举报 回复
发表于 2013-10-21 17:57:05
LZ您好:

我估计依然是您的GPU程序有BUG造成的,请您仔细研究或者调试一下。

祝您好运~
使用道具 举报 回复 支持 反对
发表于 2013-10-21 18:03:04
ice 发表于 2013-10-21 17:57
LZ您好:

我估计依然是您的GPU程序有BUG造成的,请您仔细研究或者调试一下。

能指条路吗??
32的就是没错误啊~~  

比如是我block_size设置小了?
我现在是比较迷惘啊  因为查了有半年了。。。。。555555555555555555

使用道具 举报 回复 支持 反对
发表于 2013-10-21 18:09:23
Jeffrey 发表于 2013-10-21 18:03
能指条路吗??
32的就是没错误啊~~  

难道是因为计算量大了,导致误差累积的更明显了?

楼主建议这样尝试下是否能确定(或者排除)此方面的原因:
将数据类型改为double, 依然使用64*64*64进行测试。

如果问题消失,那么可能是您的误差累计上的原因。
如果问题依然存在,则可以排除是误差累计的原因。

那怕不能解决,也能缩小问题的范围,请尝试下。
使用道具 举报 回复 支持 反对
发表于 2013-10-21 18:10:57
Jeffrey 发表于 2013-10-21 18:03
能指条路吗??
32的就是没错误啊~~  

LZ您好:

在您提供的信息下,我无法为您指出原因所在。

我无法解释,为什么您的程序在确定性输入的情况下,不是一个确定性的输出,(按照您描述的算法预期,这个应该是一个确定性的行为)。以及更加无法为您回答造成这种不确定性的原因在哪里。

根据我的推断,这个有较大可能是BUG作祟,有较小可能是算法敏感度或者软硬件环境的问题。

如果您认为这就是“不愿意为您指一条明路”,那我也没办法,指点迷津是佛祖的活,我干不了,见谅。

祝您调试顺利~
使用道具 举报 回复 支持 反对
发表于 2013-10-21 18:12:00
玫瑰幻想 发表于 2013-10-21 18:09
难道是因为计算量大了,导致误差累积的更明显了?

楼主建议这样尝试下是否能确定(或者排除)此方面的原 ...

谢谢玫瑰!!
我  现在使用的就是double。

累积可能是一个原因~~~  只是有时候第一步就不收敛 ,有时候直到第100步才不收敛。我奇怪的是这个地方。

而这个收敛最重要的针对就是求解 Ax=b。  
使用道具 举报 回复 支持 反对
发表于 2013-10-21 18:15:03
Jeffrey 发表于 2013-10-21 18:12
谢谢玫瑰!!
我  现在使用的就是double。

话说楼主是能否在其他人的机器上,编译运行一下您的程序,这样至少可以再次排除是否是机器的缘故。

尝试下?
使用道具 举报 回复 支持 反对
发表于 2013-10-21 23:35:02
ice 发表于 2013-10-21 18:10
LZ您好:

在您提供的信息下,我无法为您指出原因所在。

谢谢ice啊~~
您别误解哈~ 没有那个意思呢~


3ks!
使用道具 举报 回复 支持 反对
发表于 2013-10-21 23:35:39
玫瑰幻想 发表于 2013-10-21 18:15
话说楼主是能否在其他人的机器上,编译运行一下您的程序,这样至少可以再次排除是否是机器的缘故。

尝试 ...

恩恩 好的呢!
我明天一早就换个电脑试一试!!
使用道具 举报 回复 支持 反对
发表于 2013-10-21 23:36:34
我能@ 横扫吗? cudazone  有 @ 的功能吗?
恒大在哪里啊,恒大在哪里,恒大就在我心理。
使用道具 举报 回复 支持 反对
12下一页
发新帖
您需要登录后才可以回帖 登录 | 立即注册