使用MSVC将C++头文件单元集成到Office中 (3/n)

使用MSVC将C++头文件单元集成到Office中 (3/n)

💡 原文英文,约1700词,阅读约需6分钟。
📝

内容提要

本文介绍了微软Office如何将C++头文件单元集成到Microsoft Word的构建中,并评估了对构建吞吐量的影响。通过迁移到头文件单元,构建吞吐量最好的情况下提高了21.3%,最差的情况下降低了0.9%。头文件单元不仅提高构建速度,还具有可移植性和较小的磁盘占用等优势。文章还提到了即将进行的改进,包括直接获取调试信息和消除重复数据。作者鼓励读者尝试集成C++模块或头文件单元,并与社区合作改进实现。

🎯

关键要点

  • 微软Office将C++头文件单元集成到Microsoft Word的构建中。
  • 迁移到头文件单元的最佳情况下,构建吞吐量提高了21.3%,最差情况下下降了0.9%。
  • 头文件单元具有可移植性和较小的磁盘占用等优势。
  • Word使用了两种预编译头文件,分别是minpch和word_shared。
  • minpch包含约250个文件,而word_shared包含约2500个文件。
  • 测试过程中使用了不同的配置和设备进行性能测量。
  • 头文件单元的IFC文件是可移植的,可以从云端下载。
  • 头文件单元在磁盘上的占用空间显著小于对应的预编译头文件。
  • 存储系统性能是构建编译时间改进的最佳预测因素。
  • 即将进行的改进包括直接从IFC文件收集调试信息,避免创建大型对象文件。
  • Office计划继续将低级库转化为头文件单元,并消除全局'inc'文件夹。
  • 将共享的预编译头文件迁移为头文件单元将加速构建过程。
  • 作者鼓励读者尝试集成C++模块或头文件单元,并与社区合作改进实现。

延伸问答

C++头文件单元集成到Office的主要目的是什么?

主要目的是提高Microsoft Word的构建吞吐量和构建速度。

迁移到头文件单元后,构建吞吐量的变化如何?

在最佳情况下,构建吞吐量提高了21.3%,而在最差情况下下降了0.9%。

头文件单元相比于预编译头文件有哪些优势?

头文件单元具有可移植性、较小的磁盘占用和更快的构建速度等优势。

Word中使用的预编译头文件有哪些?

Word中使用的预编译头文件有minpch和word_shared,分别包含约250个和2500个文件。

即将进行的改进有哪些?

即将进行的改进包括直接从IFC文件收集调试信息和消除重复数据。

如何提高构建编译时间的预测因素?

存储系统性能是构建编译时间改进的最佳预测因素。

➡️

继续阅读