У меня есть (как некоторые, вероятно, уже устали видеть в SF) двухъядерный четырехъядерный процессор Dell 2950 с тактовой частотой 3 ГГц, работающий под управлением ESXi. Я заметил на консоли управления VSphere, что сервер сообщает, что у него не включена гиперпоточность ("неактивно")
Видимо в BIOS он по умолчанию выключен.
Я знаю, что могу закрыть все виртуальные машины, перезагрузить и отредактировать этот параметр, но должен ли я? Есть ли реальная выгода от включения гиперпоточности в этом типе настройки, или прирост производительности является незначительным, если таковой имеется?
Я читал об этой теме всего несколько раз. Я нашел статью на www.vmguy.com Вот который резюмирует консенсус по этому вопросу HT (прямо из статьи):
У использования HT в ESX есть свои плюсы и минусы.
Плюсы
Лучшее совместное планирование виртуальных машин SMP
Гиперпоточность предоставляет больше контекстов ЦП, и поэтому виртуальные машины SMP можно запланировать для работы в сценариях, в которых не было бы достаточного количества контекстов ЦП без Hyperthreading.
- Типичные приложения видят улучшение производительности в диапазоне 0-20% (то же самое, что и невиртуализированные рабочие нагрузки).
Минусы
- Ресурсы процессора используются совместно с включенной функцией Hyperthreading.
Ресурсы процессора являются общими, например кэши L2 и L3. Это означает, что два потока, запущенные на одном процессоре, конкурируют за одни и те же ресурсы, если они оба имеют большой спрос на них. Это, в свою очередь, может снизить производительность.
Учитывая все обстоятельства, трудно обобщить влияние Hyperthreading на производительность. Это сильно зависит от рабочей нагрузки виртуальной машины. Еще один момент: вы всегда можете использовать минимальные и максимальные значения ЦП для каждой виртуальной машины или пула ресурсов, чтобы зарезервировать определенное количество ЦП для наиболее важных рабочих нагрузок. Как и в случае с большинством элементов производительности, которые я описываю, тестирую, тестирую, тестирую. Попробуйте рабочие нагрузки и посмотрите, что лучше всего работает на имеющемся у вас оборудовании.
Опять же, это прямо из статьи. Я не уверен, что HT того стоит, так как я тоже использую AMD Opteron, поэтому не могу говорить по опыту.
Вы уверены, что на ваших процессорах есть технология HyperThreading? Я думаю, что большинство четырехъядерных процессоров этого не делают. Мои серверы ESX также сообщают, что HyperThreading «неактивен», и у меня есть процессоры AMD, на которых никогда не было HT.
Единственные процессоры Intel, поддерживающие Hyperthreading, - это архитектура Netburst (Pre Core \ Core Duo) и самые последние процессоры на базе Nehalem (то есть для серверов на данный момент только Xeon 5500). Серия 2950 не поддерживает Xeon 5500, но поддерживает более ранние диапазоны 5000, 5100, 5200, 5300 и 5400 (точные поддерживаемые ЦП немного различаются между различными моделями 2950). Из них только самая старая, серия 5000 (Dempsey), поддерживает Hyperthreading, поскольку она была основана на архитектуре Netburst.
Все четырехъядерные процессоры Xeon 5xxx основаны на архитектуре Core или Nehalem, поэтому в вашем случае ваш процессор не поддерживает Hyperthreading.