我开发了一个桌面Windows应用程序,部署到各种客户端PC上,从网络书到大型工作站。能够在低规格机器上进行性能测试会很有用。是否有可能限制虚拟机的性能,使其性能如同低规格机器的性能?您可以使用虚拟机来测试应用程序的性能吗?
更新:我的首选VM技术是VMWare Workstation,以防影响答案。
我开发了一个桌面Windows应用程序,部署到各种客户端PC上,从网络书到大型工作站。能够在低规格机器上进行性能测试会很有用。是否有可能限制虚拟机的性能,使其性能如同低规格机器的性能?您可以使用虚拟机来测试应用程序的性能吗?
更新:我的首选VM技术是VMWare Workstation,以防影响答案。
随着VMware ESXi,是(免费版本很好),但没有与工作站 - 但如果需要可以使用Workstation 8作为ESXi的远程控制台。
除了工作站功能,ESXi还提供resource management,因此您可以限制CPU可用并控制磁盘访问,网络带宽和其他系统资源的优先级。
在某种程度上可能会或可能不会有用。你当然可以让它变慢 - 但不能确定它会像本质上速度较慢的PC一样慢,因为许多与CPU缓存,磁盘缓存,文件缓存,主机操作系统引起的抖动以及竞争对手有关的因素资源。影响GPU性能的因素也是一样的。
在某种程度上是的,但它不是一个真正的低功率机器将会是一样慢。例如,主机操作系统文件高速缓存可能导致文件从RAM高速缓存中加载,而不是在磁盘上滚动,这可能会导致虚拟机的性能优于具有相同内存大小的实际机器,并且程序可以访问大量磁盘。
那么,我是否正确地阅读这篇文章,因为它不可能完全建模磁盘特性?由于主机具有快速SSD,因此这是一个问题。 – 2012-01-18 14:27:10
我不知道这是否适用于您,我们使用vmware的以下文档来“构建”虚拟系统,这与我们想要测试软件的硬件相媲美。
我们使用了第二部分的一些基准。因此,我们在硬件和vmware上创建报告并构建一个矩阵来比较系统。
找到文档here。
一个有趣的文档,但它似乎是基准和改善虚拟机性能。我想限制虚拟机的性能。我错过了那里的东西吗? – 2012-01-18 19:27:01
不,我认为你说得对。在我们的项目中,我们为我们喜欢测试的性能定义了基准测试结果。我们通过在不同的硬件上运行基准测试来实现这一点,即使是非常老的系统。然后我们配置不同的虚拟系统,以便匹配定义的基准测试结果。通过这种方法,我们复制了大量系统来测试具有不同操作系统和不同“硬件”配置的软件。但是你必须让真正的BIG-System在一台主机上运行多个VMS系统。 – 2012-01-18 19:37:43
谢谢,安德烈亚斯。这是一个有用的文件。 – 2012-01-19 09:42:43
您好肖恩,限制虚拟机规格的可能性取决于您要使用的解决方案。你能告诉我们你想使用哪种软件吗? – 2012-01-18 08:13:30
我发现仅仅在真实的硬件上测试就简单多了。 Windows版本也很重要。 – 2012-01-18 09:06:44
您也可以加载实际机器,为应用程序留出更少的CPU周期和I/O带宽。 – 2012-01-18 09:34:50