【发布时间】:2011-07-14 23:38:32
【问题描述】:
我有一个很奇怪的。
我们的开发部门有大约十几台 PC,它们都遇到相同的问题: 使用 msbuild4.0 (VS2010) 的命令行构建比应该的要慢得多。比预期慢 4 到 5 倍。
所有机器都是 HP z400 工作站(四核 Xeon+超线程,2.4 GHz,6GB RAM) 在 Win7 X64 上运行 Windows 7 Pro 64 位或 HP Elitebook 笔记本电脑(Core-i7 4GB RAM)。 如果我选择其中一个预装了原版的 Win7,安装 VS2010 并进行构建,它们的速度与预期的一样快。如果我用我们公司的标准软件映像安装它们,它们在同一个 VS 项目上会慢 4 到 5 倍。
联想笔记本电脑 (Core-i5) 或台式机 (Core-i7) 上的相同公司软件映像显示公司映像与工厂预装的 Win7 之间没有可测量的差异。 更奇怪的是:如果我在有问题的 HP 系统上安装带有 Win7 映像的 VirtualBox,那么虚拟机就没有问题。
我尝试过的每个基准测试工具都显示公司图像和预装的 Win7 之间没有可测量的差异。只有 msbuild 受到影响,并且仅在公司镜像上运行 Win7 的 HP 机器上受到影响。
在您问之前:我已禁用公司映像中的所有软件/后台进程,但这没有任何区别。这显然不是在后台运行的东西以某种方式与 msbuild 交互。我最好的猜测是,在 HP 硬件上,某些设置会发生更改,从而影响 msbuild。这不会发生在其他硬件上。 (并且根本不使用/执行 VS2010 GUI。我知道如果两者都尝试访问相同的解决方案/文件,这可以与 msbuild 交互。防病毒也没有任何区别。)
有人知道什么可能会影响 msbuild 变慢吗? 欢迎任何建议,无论多么牵强。
【问题讨论】:
-
外星人。另外,你太离题了,让我的牙齿发痒。
-
尝试将 MSBuild 输出详细程度更改为诊断 - 它为您提供有关构建期间发生的情况的大量信息。您可能从中获得更多信息。
-
检查杀毒的性能影响时,关闭是不够的。你必须卸载它。
-
@Ben - 你为什么要卸载。我会假设如果它在关闭时不扫描,那么它与不存在一样吗?
-
@PeterMularien 这不是真正的错误。只是一个愚蠢的实现,在多核机器上执行得非常糟糕。适用于所有 V9 版本和(我被告知)也适用于早期版本。它在 V10 及更高版本中已修复。 (据我所知,糟糕的性能仍然存在,但它只在需要时被调用。不再在每个证书检查中。在我们的例子中,仅用于电子邮件证书检查,而 Outlook 几乎是单一威胁的,所以没有人再注意到了。 )
标签: performance visual-studio-2010 msbuild