我想开始学习和理解在用于实时模拟(尤其是游戏)的代码中优化什么以及何时优化。那里有各种代码片段,大多数将标准 trig 或 sqrt 函数与其优化版本进行比较。有些需要组装,有些则依赖于架构特定的策略,有些则使用纯数学技巧(例如查找表或近似函数)。每个版本都声称速度更快,但精度成本较低。
据我所知,没有汇编材料(例如一本书)解释可以做什么,包括基础知识(没有人知道汇编、SSE、SIMD、MMX、FPU 等)。然而,有大量的书籍旨在如何实现一些数值方法(这些书籍很好,但它们并没有强调快速花絮的重要性,因为这些书籍中的绝大多数甚至不包含特定于架构的代码或从开发人员的角度进行浮点讨论)。
那么,任何人都可以分享最适合这些场景的书籍或其他资源的简短列表吗?
PS:我的印象是“C++ 中的数字食谱..”或“科学家和工程师的 C++..”或“科学计算的 C++..”没有包含很多(如果有的话)关于这个问题的信息。