你好,我叫Jim Hogg,我是一名项目经理,在微软的Visual C++编译团队工作,主要是在Redmond的主要校区工作。更具体地说,我在编译器中负责优化代码,使其运行更快,或使其更小,或两者兼而有之。在这一系列的博客文章中,我将解释一些使代码运行更快的优化。我会包括 示例,带 衡量各种优化可能带来多少收益。然后我将描述团队最近添加的一些优化,以惊人的、不明显的方式转换代码。这个博客的目标是谁?任何对编译器工作方式感兴趣的人。任何人都想知道编译器如何使你编写的代码运行得比“原始C++代码所说的”更快。另一方面,一些阻止或抑制优化的模式:有了这些知识,您可以调整源代码,使优化器更自由,并使程序运行更快。这个博客的前提条件是什么?对C或C++编程有一定的了解。我将使用的大多数示例都可以用C语言理解。只有到最后,我才会检查特定于C++代码的优化,例如“去虚拟化”。理想情况下,您应该能够阅读64位汇编代码:这样,您就可以真正看到优化所做的转换。但这并不是一个硬性要求——我的目标是提供见解,而不必一直深入到编译器生成的二进制机器代码。我将在这里为本系列中的所有博客文章创建一个目录,并在发布每个文章时进行更新。
null
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END