运行单元并行测试超过五个核心

时间:2010-08-11 14:18:43

标签: visual-studio unit-testing visual-studio-2010 parallel-processing

我已按照http://blogs.msdn.com/b/vstsqualitytools/archive/2009/12/01/executing-unit-tests-in-parallel-on-a-multi-cpu-core-machine.aspx上的说明操作,我可以并行执行测试。

到目前为止一切顺利。

现在问题是:我无法将parallelTestCount设置为零(自动配置)或大于5的值。运行五个并行测试工作正常但不是六个。

是的,我的机器上有五个以上的核心;我在Intel i7处理器上运行,它有四个超线程核心,这意味着我应该可以并行运行8个测试。

现在我确定还有一些其他的逻辑或硬件限制,我不希望能够在八个核心上运行,并行地加速八个测试。

然而,知道它没有并行运行超过五个测试的原因会很酷吗?

2 个答案:

答案 0 :(得分:6)

这似乎是MSTest中的一个错误。我偶然发现同样的问题,所有测试都被标记为已中止,并且“测试结果”窗口中有一个“测试运行错误”链接,如果单击该链接会产生以下消息:“测试运行正在中止”,挂起测试的数量超过最大允许'5'“。

更新:它已在Visual Studio 2010 Service Pack中修复。

答案 1 :(得分:1)

它可能只是我,但超线程并不是真正的核心所以i7只有4个物理核心而不是8个。也许它与此有关。

或许有一些bios设置与操作系统如何使用超线程有关。