Недавно мы приобрели сервер, на котором работает Hyper-V 2008 R2 без операционной системы. Сервер имеет два четырехъядерных процессора Intel Xeon с гиперпоточностью, поэтому, если я правильно понимаю, это дает нам 16 ядер. В Hyper-V мы создали виртуальную машину под управлением Windows Server 2008 R2 с 4 виртуальными процессорами. Экран настроек процессора сообщает мне, что это составляет 25% от общей вычислительной мощности системы. Означает ли это, что оставшиеся 75% не могут быть задействованы виртуальной ОС? Мы будем запускать несколько других виртуальных машин, но эта предназначена для SQL Server, и мы хотели бы вложить в нее как можно больше мощности.
Виртуальный ЦП может быть сопоставлен только с одним физическим ЦП. Вы не можете взять 4 физических процессора и сделать один виртуальный ЦП в 4 раза быстрее; это просто не так, как это работает.
Hyper-V ограничен назначением 4 виртуальных ЦП для виртуальной машины (последняя проверка). Если вам нужна значительная мощность процессора, переходите к физическому, нет смысла добавлять к чему-то накладные расходы виртуализации который В первую очередь, интенсивный и параллельный.
Кроме того, как отмечает Holocryptic, если вы назначаете виртуальной машине 4 виртуальных ЦП, эта виртуальная машина не может работать, пока Hyper-V не получит 4 физических ядра ЦП для их запуска. В зависимости от вашей конфигурации это может быть серьезным камнем преткновения (например, если у вас есть 6-ядерный компьютер с группой из 4 виртуальных ЦП, только одна будет работать одновременно, два других ядра всегда будут работать. по существу неиспользованный). В соответствии с Джейк Ошинс это не было правдой ни для одной из версий Hyper-V. Он заявляет, что Hyper-V не использует групповое планирование для ЦП; как почти любой другой гипервизор. Соответственно, если доступно одно физическое ядро ЦП, Hyper-V может использовать его для запуска многопроцессорной виртуальной машины. (Также упоминалось, что Hyper-V может не использовать все физические ядра, доступные в то время, из-за разделения NUMA)
Боковое примечание: SQL не обязательно использует все ядра, которые вы можете использовать в первую очередь. Это действительно зависит от того, для чего вы его используете и насколько распараллеливаема нагрузка.
Ага, что сказал Крис. Если вам нужно более 4 ЦП в виртуальной машине Hyper-V, либо создайте два сервера SQL в виртуальном режиме и разложите свои базы данных, либо перейдите на физический уровень. В зависимости от вашей лицензии на SQL-сервер вы можете добавить больше SQL-серверов в виртуальный (на том же физическом хосте) без дополнительных затрат на лицензирование, но для получения дополнительной информации прочтите технический документ по виртуальному лицензированию SQL.
Я также согласен с тем, что если у вас не хватает мощности ЦП для SQL с 4 виртуальными ЦП, значит, у вас либо серьезное использование приложения, либо команды SQL написаны плохо.
Примерно 4 ядра процессора:
В разделе конфигурационного файла виртуальной машины:
[процессоры] [count type = ”integer”] 16 [/ count]
Теперь у вас 16-ядерный процессор.
ОБНОВИТЬ: Кажется, нужен скриншот
следуйте этому руководству
http://surminski.eu/2012/04/17/hyper-v-how-to-add-more-than-4-cores-to-a-virtual-machine/
вы можете найти файл конфигурации vm xml в каталоге «Virtual Machines» каталога VHD виртуальной машины, файл конфигурации будет иметь имя под идентификатором виртуальной машины. Ниже ссылка является ссылкой.
ссылка: XML-файл конфигурации виртуальной машины
убедитесь, что вы редактируете XML-файл конфигурации виртуальной машины с помощью блокнота / блокнота ++, открытого в права администратора