有没有一种标准的方式来从客户操作系统内testingWindows VM的性能?

我们看到我们的软件在运行Windows 2008虚拟机的客户中performanceexception。 主机是VMWare ESX Server。

我看到的最大的问题是我们的进程下降套接字连接或套接字连接超时。 我们的一些进程通过TCP套接字相互通信。 在某些情况下,我们将套接字连接到远程系统(例如WMI,JDBC)。

我相信虚拟机是资源匮乏的。 我们无法访问ESXpipe理/性能仪表板。 我还了解到,主机虚拟机内的perfmon或任务pipe理器提供的任何数字都不是真正的主机操作系统健康状况指示。

我可以写一个程序,做一堆浮点math,并打印出所需的时间。 然后将这个时间与在不同的虚拟机或真正的Windows机器上获得的时间进行比较。

这种方法足以让我们能够确定根本原因是否确实是虚拟机的性能。 然而,要说服客户是否有一个标准的方法或工具来做到这一点会容易得多。

有一个吗?

我倾向于使用我用来testing物理硬件的相同产品。

http://www.passmark.com/products/pt.htm

跳过三维testing当然,但其他人可以是有益的,尤其是磁盘和networking基准。 确保您使用的是正确的networking和IO驱动程序,并确保所有的Windows设置都针对VM进行了优化。

为了testingnetworking,我使用iperf和netperf来进行压力testing。

为了testing磁盘I / O,使用sqlio这是另一个行业标准的工具。 以不同的块大小运行随机和顺序I / Otesting。

对于CPU / RAM的testing,我无法想象Windows的任何东西。