如何在 VM 中模拟慢速机器?

Nat*_*ong 29 performance vmware-fusion

我正在测试一个 AJAX 重的 web 应用程序。我在新的Mac上开发,但我在Windows XP中使用VmWare Fusion(目前为3.1.2)进行测试,使用IETester模拟旧版本的IE。

这让我可以看到较旧的 IE 版本将如何呈现该站点,但我还想了解该站点在较旧的机器上的表现如何。我在 VM 的设置中看到我可以减少 RAM;有没有办法也降低处理器速度?我还能如何模拟慢速机器?

(我还将查看如何模拟慢速互联网连接。)

har*_*ymc 17

在虚拟机中限制 CPU 速度的线程提供了一些建议:

  • 在 VMWare ESX 和 ESXi 上,您可以创建资源池并限制该池的 CPU 资源。这将允许您限制在该资源池中创建的任何系统的 CPU 速度。
  • MS hyper-V 中的设置允许将虚拟机限制为整个主机的百分比。因此,如果您有一台以 2 GHz 运行的 8 核主机,您可以尝试将客户端虚拟机限制为一个内核,并且不超过该内核的 45%。

Virtual PC Guy 在《降低虚拟机速度》中评论道:

在 Virtual Server 下设置一个最多 10% CPU 资源的虚拟机(例如)意味着它在一段时间内只允许在 CPU 上运行总系统调度时间的 10%。当虚拟机运行时,它仍然以处理器全速运行(尽管频率低于它本来的运行速度)。

他建议使用Turbo来降低 VM 的速度。他还建议使用比虚拟化慢得多的仿真产品,例如DOSBoxBochs


小智 8

您可以使用cpulimit来限制分配给您的进程的处理时间量。这在大多数 linux 发行版的存储库中可用。

用法非常简单,例如,如果您的 VM 作为进程 12345 运行并且您只想为其分配 5% 的 CPU 周期,请使用以下选项:

$ cpulimit -l 5 -p 12345
Run Code Online (Sandbox Code Playgroud)


que*_*eso 1

在来宾 XP 虚拟机中安装一个小实用程序,以使用 XP 的内置动态频率切换来控制 CPU 频率。例如,像SpeedswitchXP这样的实用程序。我自己从未尝试过类似的操作,如果 VMWare 提供给来宾 VM 的虚拟 CPU 不支持动态频率切换,则可能会出现问题。