我正在树莓派上使用 python。我使用互补滤波器从陀螺仪中获得更好的值,但它消耗了太多树莓派的电量 - 大约为 70%。我认为可以通过降低浮点精度来提高性能。现在,结果大约有 12 位小数,这超出了我的需要。有什么办法可以设置最大精度吗?仅仅对数字进行四舍五入并不能满足我的需求,因为这只是另一种计算。谢谢!
Edit:我尝试过使用 Decimal 模块,精度设置为 6,它比 float 慢了近 6 倍!除了 Decimal 之外,还有其他处理定点数的方法吗(它看起来是为了更高的精度而创建的,而不是为了性能)
您可以使用 numpy 强制进行单精度浮点计算。
然而,如果使用单精度浮点比双精度更快,我会感到非常惊讶:树莓派有硬件浮点支持,所以我希望所有计算都以全 80 位精度完成,然后四舍五入为 32 位或保存到内存时的 64 位结果。唯一可能的好处是保存值时使用的内存带宽会稍微减少。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)