小编Har*_*ins的帖子

我可以使用舍入来确保原子浮点运算的确定性吗?

我正在开发一个需要浮点确定性的C应用程序.我还希望浮点运算相当快.这包括IEEE754未指定的标准超越函数,如正弦和对数.与硬件浮点相比,我考虑的软件浮点实现相对较慢,所以我考虑简单地从每个答案中舍去一个或两个最低有效位.精度的损失对我的应用程序来说是一个充分的妥协,但这是否足以确保跨平台的确定性结果?所有浮点值都将是双倍的.

我意识到操作顺序是浮点结果差异的另一个潜在来源.我有办法解决这个问题.

如果今天使用的主要浮点硬件实现的软件实现将是非常好的,所以我可以直接测试这样的假设.

c floating-point deterministic rounding numerical-computing

6
推荐指数
1
解决办法
447
查看次数