四精度浮点运算

5个视图(过去30天)
阿兰·巴劳德
阿兰·巴劳德 2021年6月25日
评论: 阿兰·巴劳德2021年6月26日
我尝试使用四倍精度,使用众所周知的“双-双”方法。许多操作似乎是正确的,但有些结果是错误的。要正确操作,必须避免访问80位寄存器。在运行Matlab时是否会出现这种情况。此外,使用适用于AMD和Intel处理器(FMA3)的FMA操作将非常有用。如何在Matlab中使用这些函数。
在奇怪的结果中,我无法用31个正确的数字计算1/6。也许是因为使用双精度6*(1/6)=1,尽管1/6=1.6666667E-01!!
顺致敬意,
9评论

登录以发表评论。

答复(1)

简
2021年6月25日
在Matlab 6.5中,您可以控制80位寄存器的使用:
%[未经现代Matlab版本测试]
系统依赖(“设置精度”, 64)%启用80位寄存器
系统依赖(“设置精度”, 53)%禁用
至少在使用64位寄存器的英特尔CPU上是默认设置。我已经用这个做了好几年的实验了 XSum 以及一种稳定的蚁群算法。
这也可能起作用:
特征(“设置精度”, 64)%[未经现代Matlab版本测试]
3评论

登录以发表评论。

下载188bet金宝搏


释放

R2021a

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!