浮点数不满足加减法的结合律,所以优化一下可能结果就不同了。
想要结果一致就需要上汇编。
EIGEN 这样的头文件的库就比较容易出这个问题。那种传统的库就没事。因为他们基本只提供release的版本。。。
即使你是debug版的程序也是要求你链接他们release模式的库。
【 在 iamrzd 的大作中提到: 】
: 最开始怀疑是“Floating Point Model”的问题,但是发现Debug和Release版本都是"Precise (/fp:precise)"。
: 后来尝试把Release的优化关掉,结果就一致了,但是Release版本关掉优化并不是一个解决方案。
: 库是Eigen,一直把它当作黑盒子用,实现也比较复杂,没精力深入进去debug
--
FROM 43.224.44.*