引言
自从Visual Studio 2022发布以来,我们一直在努力提升游戏开发者的生产力。在我上一次的Microsoft Game Dev谈话中,我分享了为什么Visual Studio是游戏开发者的终极开发IDE的观点。我也和Double Fine Productions的开发人员一起演示了他们最喜欢的功能特性(在开发Award-winning Psychonauts 2的时候)。 接下来,我还分享了对于Double Fine来说最为喜爱的VS2022功能。 最后,Microsoft Game Dev宣布:一组由 Perforce 直接编写的用于 Azure 上的 Perforce Helix Core 的吉特哈布Actions现已推出。
在今天的文章中,我将通过讨论我们对 Unreal Engine 和 Chromium 等大型代码库的测量结果,来展示搜索和获取代码时一些惊人的速度改进。 看看使用更快的 C++ IntelliSense 准备好并打开文件,你可以更加快速地编写代码。 使用 C++ Find All References 和索引 Find in Files 更快地搜索文件。
虽然游戏开发人员和拥有大型代码库的开发人员将从这些改进中受益最多,但所有 C++ 开发人员都可以通过这些优化来获得更高的生产力。
测试方法
我们在配备 Intel Core i7-9700 @ 3Ghz、64GB RAM 和 SSD 的电脑上使用虚幻引擎 4 示例项目进行了测试。 测试在 Visual Studio 2019 16.11 和 Visual Studio 2022 17.1 上进行。 结果取 3 次运行的平均值。 对于 Find in Files,我们使用 Chromium 存储库进行了基准测试,其中包含超过 300,000 个文件。
代码加载
在 Visual Studio 2019 上打开文件时,代码显示需要 2.02 秒。 在 Visual Studio 2022 中,你可以看到相同的操作仅在 0.82 秒内完成,速度提高了 2.44 倍。 在 Visual Studio 2019 中,打开文件后出现语义着色所需的时间为 12.9 秒。 你会体验到同样的动作在 VS2022 中快了 2.22 倍,耗时 5.8 秒。
对于虚幻引擎项目,你还将体验到 IntelliSense 准备就绪的额外速度。
代码搜索
在 Visual Studio 2022 中,使用 C++ 查找所有引用 (Shift + F12) 时,你将看到 1.74 倍的速度提升。 动作在 17.36 秒内完成; 与 Visual Studio 2019 相比,该操作花费了半分钟多一点。 对于 Visual Studio 2019 中的在文件中查找,在 Chromium 存储库中搜索 300,000 个文件需要 30 秒。 在 Visual Studio 2022 中,你会注意到相同的操作需要 1.5 秒,提高了 20 倍!
结果分析
你会注意到对 IntelliSense 引擎的一些优化,这些优化在获取代码场景方面创造了更高的效率。 Find All References 也通过消除搜索过程中的低效率得到了增强。
对于在文件中查找,你现在可以利用索引搜索。 要启用索引搜索,请转到工具 > 选项 > 环境 > 预览功能并确保选中“启用索引以获得更快的查找体验”。
总结
我想吧,既然大家选择了C++这条道,一定对性能十分看重。 而VS2022正是提供了一些优化措施来提升C++开发者的生产力。 “什么是宇宙开发IDE。”(战术后仰)
最后
Microsoft Visual C++团队的博客是我非常喜欢的博客之一,里面有很多关于Visual C++的知识和最新开发进展。大浪淘沙,如果你对Visual C++这门古老的技术还是那么感兴趣,则可以经常去他们那(或者我这)逛逛。 本文来自:《Enhancing Game Developer Productivity with Visual Studio 2022》
|