24小时热门版块排行榜    

查看: 597  |  回复: 8
当前主题已经存档。

weizhiyong

金虫 (正式写手)

[交流] 【求助】同一个C程序在不同的机器上计算的结果不一样?

最近编写循环200万步的一个MD程序,在一台新机器上运行的结果和一台旧机器上运行的结果不一样?奇怪,为什么呀?
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

老虎大王

木虫 (著名写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
lei0736(金币+1,VIP+0):谢谢 1-4 16:18
这有什么奇怪的,再正常不过了。
2楼2010-01-04 15:58:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weizhiyong

金虫 (正式写手)

楼上可否告知原因呀?
3楼2010-01-04 16:53:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bay__gulf

金虫 (著名写手)

刘苏州

★ ★
lei0736(金币+2,VIP+0):谢谢 1-4 17:12
和赋速度的算法实现有关
自己找原因也是一个学习过程
很简单的, 别人点破了不利于你自己提高

[ Last edited by bay__gulf on 2010-1-4 at 16:56 ]
4楼2010-01-04 16:54:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tianlangxingaa

铁杆木虫 (著名写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
lei0736(金币+3,VIP+0):谢谢 1-4 20:16
MD计算的时候产生的坐标和速度都是随机的,就是和机器的伪随机数产生器有关,不同的机器或者不同的编译器是不一样的

但是最后的结构应该和这些随即的东西没太大的关系,一般计算的性质都会得到的。

如果不是,请查找其他原因。
5楼2010-01-04 18:58:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weizhiyong

金虫 (正式写手)


zeoliters(金币+1,VIP+0):多谢回帖交流! 1-5 15:26
楼上两位的说法本人也考虑过,但是原因不在这里,因为我们使用的随机数是按照特定的算法编写的,不管运行多少次结果都是一样的。

我觉得可能是机器的位数不一样造成的,
6楼2010-01-04 21:27:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tianlangxingaa

铁杆木虫 (著名写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
lei0736(金币+2,VIP+0):谢谢 1-4 22:26
引用回帖:
Originally posted by weizhiyong at 2010-1-4 21:27:
楼上两位的说法本人也考虑过,但是原因不在这里,因为我们使用的随机数是按照特定的算法编写的,不管运行多少次结果都是一样的。

我觉得可能是机器的位数不一样造成的,

说的有一定的道理,但是我觉得这个不是关键,机器位数会引起误差,但是你算了很多步,系统已经完全忘记了前面的信息,应该不会不一样的。至少动力学信息和静态结构信息不会差别太大。

最理想的办法是再拿别的机器测试下。在看看结果
7楼2010-01-04 21:47:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

老虎大王

木虫 (著名写手)

★ ★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
lei0736(金币+4,VIP+0):谢谢 1-5 13:44
不同的机器,对浮点数的处理是有所不同的。尤其是CPU类型不同的时候,涉及浮点运算的时候,出现这个问题很正常。你的机器位数不同,出现这个问题更是正常。除了与硬件本身有关以外,也可能与你的软件环境有关系。比如你的运算是否都是同样的类型数据之间的运算?有没有强制转换?有没有双精度与单精度混用的问题?有没有存在着隐含的数据类型的自动转换?操作系统版本是否相同?编译器是否同一版本?

[ Last edited by 老虎大王 on 2010-1-5 at 11:54 ]
8楼2010-01-05 11:52:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weizhiyong

金虫 (正式写手)

恩,谢谢楼上的两位!
9楼2010-01-05 16:26:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 weizhiyong 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见