Подтвердить что ты не робот

Выполнение единичных тестов на более чем 5 ядрах параллельно

Я выполнил инструкции по http://blogs.msdn.com/b/vstsqualitytools/archive/2009/12/01/executing-unit-tests-in-parallel-on-a-multi-cpu-core-machine.aspx к букве, и я могу параллельно выполнять тесты.

Пока все хорошо.

Теперь проблема: я не могу установить параметр parallelTestCount равным нулю (Auto configure) или значению выше 5. Выполнение пяти параллельных тестов работает нормально, но не шесть.

Да, у меня на моей машине больше пяти ядер; Я работаю на процессоре Intel i7, который имеет четыре ядра с гиперпотоком, что я должен иметь возможность параллельно выполнять 8 тестов.

Теперь я уверен, что есть некоторые другие логические или жесткие ограничения, и я не ожидаю, что смогу работать на восьми ядрах, которые громоздят восемь тестов параллельно.

Однако было бы здорово узнать причину, по которой он не запускал более пяти тестов параллельно?

4b9b3361

Ответ 1

Кажется, что это ошибка в MSTest. Я наткнулся на ту же проблему, все тесты отмечены как прерванные, и в окне результатов теста есть ссылка "Ошибка тестового запуска", которая, если щелкнуть, дает это сообщение: "Прогон теста прерывается", количество проверенных тестов превышает максимально допустимый "5".

Обновление: оно исправлено в пакете обновления Visual Studio 2010.

Ответ 2

Это может быть только я, но hyperthreading не является реальным ядром, поэтому i7 действительно имеет только 4 физических ядра, а не 8. Может быть, это что-то связано с этим.

Или, возможно, есть некоторые настройки BIOS, относящиеся к тому, как гиперпоточность может использоваться ОС, которая ее предотвращает.