我已经在 PD 论坛上问过这个问题,但我认为这里的观众更多......问题来了:)
我尝试了一个简单的谷歌搜索,并没有得到任何结果,所以我想很少有人注意到这个潜在的问题,它可能会让我们的虚拟机性能比它应有的更慢。
在现代英特尔 CPU 上,有一个内置技术 Turbo Boost,它可以在我们进行一些繁重工作时提高时钟速度,并在工作完成或 CPU 由于冷却不良而过热(或在较高的时钟速度下工作时间过长)时返回到低频率。
在详细介绍之前,我正在使用这款 CPU 测试 MBP 20173.1GHz quad-core Intel Core i7, Turbo Boost up to 4.1GHz, with 8MB shared L3 cache
当我使用 Mac 应用程序时,睿频加速始终有效。如果我在 Android Studio 中构建项目,据我观察,CPU 频率会上升到 3.8GHz(不知道它是否真的会上升到 4.1GHz,但这并不重要,因为它至少得到了提升)。
但是,当我在 PD Win VM 上时,即使我在 VS 中构建一个大项目,该项目几乎消耗了 VM 上的所有 CPU,并且消耗了 Mac 上大约 50-60% 的 CPU(我为 VM 分配了 4 个逻辑核心,这是推荐的设置),也不会触发 Turbo boost,CPU 一直以 2.2-2.5 GHz 的频率运行,很少达到 3GHz。
我知道这可能是一个难以解决的问题,因为它涉及硬件技术(也可能是 Mac 的 CPU 管理),但如果我们的 VM 可以触发 Turbo Boost,我们的峰值(周期)性能可以提升约 50%(计算为 (3.8-2.5)/2.5)。
对此有什么想法吗?
答案1
Parallels 为 VM 提供的虚拟 CPU 不需要(通常也不会)具有主机物理 CPU 的所有功能。Turbo boost 是一项经常受到影响的功能:为了充分利用它,系统必须全面了解 CPU 所有核心上发生的情况 - VM 显然不具备这一点。
更一般地说:CPU 热管理中发生的任何事情都不能由 VM 轻松完成,而只能由主机操作系统完成,因为 VM 缺乏管理它的知识。