为何同一个程序跑多次结果不一样,有些结果异常得厉害!

我的显卡是 Geforece GTX 670,同一个程序跑几遍, 计算出的结果有时却不一样。比如正确解的范围应该在50以内,但是有些时候跑出的解到10几万了,明显的结果错误。但是以上错误是偶出现。在网上查了说是GeForce系列显卡自身的原因,难道非得换Tesla显卡???

[attach]3369[/attach]

我觉得是你的程序的问题,我的程序运行了几十遍只要toolkit的版本不变,运行出的结果完全相同。

应该不会是显卡的问题,根据我的经验可能是程序并发,数据不一致造成的,比如你没有用 __syncthreads(),或者应该使用atomic运算的没有使用。

LZ您好:

如果您的程序是连续高强度跑动辄几天十几天,然后出现异常问题,那么有可能是geforce卡的问题。

如果只是普通跑跑程序,每次结果不同,这个往往是您的程序问题。

请您仔细debug之。

祝您好运~

每次结果不同,有三种错误比较常见,一种为同步问题,一种为内存访问越界,一种为数据未初始化即使用。