gpt4 book ai didi

scala - Scala 版本之间数值行为的差异

转载 作者:行者123 更新时间:2023-12-02 01:58:47 26 4
gpt4 key购买 nike

我们正在升级到 Scala 2.10。我们似乎已经修复了所有的问题,但对于我们的一些数值计算,在少数情况下答案会略有不同。 2.9.1 和 2.10.2 之间是否引入了任何可能导致此问题的已知更改,或者其他人之前是否遇到过类似情况?

由于我们所有的小测试都通过了,这应该是迭代计算中的一些累积效应,即便如此,它也只会影响一小部分情况。这些是复杂的计算,这是执行它们的唯一系统,因此我们没有独立的方法来验证哪个版本是正确的,除非进行洁净室重新实现。

最佳答案

抱歉,目前还不能发表评论。您看到的差异有多大?您在代码中进行了何种计算?问哪个是正确的可能没有意义,毕竟是 FP。你能尝试用 strictfp 编译你的代码吗?代码生成和优化方面的细微差异可能会导致 80 位中间体被截断为 64 位的时间/频率有所不同——假设您在 x86 架构上运行。如果您可以访问没有 80 位 fp 寄存器的硬件,您可以尝试在其上运行两个版本。即使这样,像 LL + S1 + S2 这样的简单表达式(其中 LL 远大于 S1 或 S2)也可以根据加法的顺序给出不同的结果。

关于scala - Scala 版本之间数值行为的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18372056/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com