Open mrdrivingduck opened 1 year ago
FDO:使用代码的运行时行为来指引编译优化。性能提升数量级:10%~15%。在数据中心中,这个级别的性能提升能够省下数以千计的 CPU。然而,FDO 因为过程繁琐而很难投入实际使用。传统 FDO 的流程包含:
基于以上步骤,FDO 较难铺开的原因:
基于这三个限制,想使用 real-world 的业务负载来进行 FDO 很难做到。
Google 提出了本文的 AutoFDO,它能够在生成环境的机器上采集硬件指标,并使用这些指标来编译下一个 release 版本。由于在生产环境上采集的数据与最新的代码之间有一定过时,AutoFDO 使编译器能够容忍一定的过时,能够达到 85% 传统 FDO 的性能。但实际使用下来,性能基本完全等同于传统 FDO。
45290.pdf
用于简化 FDO (Feedback Driven Optimization) 使用的工具。