VMWare性能的构build服务器 – 可怕或错误的testing?

我们正在研究虚拟化我们的C ++构build服务器。

主要的原因是我们目前使用的工具链,除了在Visual Studio中自己构build外,在Windows XP(或者2003Server)上只能正常运行,次要的原因是pipe理简单(只需克隆映像并准备运行不同的硬件。

最后,安装程序最有可能是每个硬件盒一个虚拟机,因为共享硬件对于C ++版本来说是没有意义的,因为无论如何它都会使CPU和磁盘达到最大。

一位同事在他的开发工作站上做了一些初步的testing,结果令人恐怖:

他测量了下面的构build时间来完整构build我们的Visual C ++ 8(Visual Studio 2005)解决scheme:

  • 桌面/本机与Windows 7:约16分钟
  • Vmware工作站与虚拟磁盘,客人是Windows XP的:〜1小时21分钟(500%!!!)
  • Vmware WS可直接访问专用物理磁盘并限制为4个核心:〜42分钟(260%!!)

有了这些时机,我们当然不会去虚拟!

我们现在问自己,我们的测量是否做出了错误的假设。

  • 我们搞砸了任何设置,以获得如此可怕的减速C + +构build?
  • 我们是否应该testingESX(i)(?)而不是Workstation?
  • 我们是否应该期待MS Hyper-V的其他function ? (因为我们的IT会更喜欢这个)

相关的问题并没有完全帮助:

  • VMWare播放器,工作站,服务器和ESX的相对性能
  • VMWare托pipe构build服务器的性能非常差

我们搞砸了任何设置,以获得如此可怕的减速C + +构build?

可能不是,VMWare Workstation不适合这项工作。

我们是否应该testingESX(i)(?)而不是Workstation?

是的,它会比Workstation更好,比裸机还要慢,但要好得多。

我们是否应该期待MS Hyper-V的其他function? (因为我们的IT会更喜欢这个)

如果需要,性能与ESXi大致相当,有些情况会更快,有些则会更慢 – 请随时尝试一下。

性能统计数据(Perfmon,Performance Monitor等等)(客户内部说它是瓶颈吗?虚拟机pipe理程序操作系统对于相同的统计数据说什么?

你使用半虚拟化的驱动程序还是仿真的?

您正在testing的PC是否具有IO虚拟化扩展以及基本的虚拟加速? 他们是否启用了BIOS?

虚拟化并不总是合适的……但是,您还没有告诉我们开发者工作站上的任何规格。 它有多less内存? 多less个核心?

你正在用/ MP标志运行编译吗?

虚拟机是否被configuration为在内存上过度使用? 记忆气球驱动程序曾经踢过吗? 还有什么东西在主机上运行? (例如,您的testing虚拟机是否运行了防病毒软件,以及主机工作站?)

我肯定会在ESXi上完成你的testing – 虚拟机pipe理程序是非常高效的,并且会为你的虚拟机提供更好的性能。 但是你仍然要面对内存和CPU的承诺。