Управљајте бројем вЦПУ-а и језгара у виртуалној машини

Када креирате виртуелне машине на разним хипервизорима (ВМВаре, КВМ, Хипер-В, итд.), Можете приметити да понекад виртуелна машина можда не види све додељене виртуелне језгре (вЦПУ). У нашем случају, 8 вЦПУ-а је додељено виртуелној машини КВМ, на њему је инсталиран Виндовс 10. Међутим, Виндовс је ове језгре дефинисао као засебне процесоре, од којих се могу користити само 2 вЦПУ-а..

Садржај:

  • Виндовс 10 виртуелна машина не види сва језгра
  • Број подржаних процесора у оперативном систему Виндовс 10
  • Управљање виртуалним кернелима и вЦПУ-овима у КВМ-у
  • Конфигурација виртуалних процесора и броја језгара у ВМВаре-у
  • НУМА архитектура и виртуални вЦПУ

Виндовс 10 виртуелна машина не види сва језгра

Ако отворите Виндовс управитељ уређаја, можете бити сигурни да су сва одабрана језгра видљива као 8 засебних виртуелних процесора тог типа КЕМУ Виртуал ЦПУ верзија 2.5.

У исто време, у својствима оперативног система Виндовс 10 (Рачунар -> Својства) и у управљању задацима може се видети да су на рачунару доступни само 2 КЕМУ Виртуелна ЦПУ-а.

То јест, без обзира колико виртуелних језгара које додате, Виндовс 10 и даље може користити само две. Истовремено, суседни виртуелни сервер са Виндов Сервер 2016 на истом хипервизору види свих 16 вЦПУ-а додељених њему.

Број подржаних процесора у оперативном систему Виндовс 10

Проблем је у томе што је у издањима Виндовса за Виндовс (Виндовс 10 / 8.1 / 7) укључено ограничење максимални број физичких процесора (утичнице), који рачунар може да користи:

  • Виндовс 10 Хоме - 1 ЦПУ
  • Виндовс 10 Профессионал - 2 ЦПУ
  • Виндовс 10 Воркстатион - до 4 ЦПУ
  • Виндовс Сервер 2016 - до 64 процесора

Међутим, ово ограничење се не односи на кернеле. И.е. за боље перформансе можете користити процесор са много језгре. Већина хипервизора може пружити вЦПУ у облику процесора, језгара процесора или чак нити. И.е. уместо 8 виртуалних ЦПУ-а, можете да обезбедите вЦПУ-ове у облику 2 утичнице са по 4 језгре у сваком. Размотримо како разликовати виртуалне процесоре у облику језгара у разним системима виртуализације и како их повезати са НУМА архитектуром која се користи у модерним процесорима.

Управљање виртуалним кернелима и вЦПУ-овима у КВМ-у

У мојој виртуелној машини Квм ц Виндовс 10, сва додељена виртуална језгра сматрају се засебним процесорима.

Да бисте користили све ЦПУ ресурсе додељене виртуелној машини, потребно је да виртуелна машина види не 8 процесора, већ један 8-језгрени процесор, 2 процесора са 4 језгре или 1 процесор са 4 језгре са 2 нити. Покушајмо да променимо начин на који су ВМ додељени ВМ-овима на КВМ-у.

Искључите виртуелну машину:

# вирсх схутдовн сервер.впн.ру - где је сервер.впн.ру име виртуелне машине.

Значајке управљања ВМ-овима у КВМ-у са конзоле сервера помоћу вирсх.

Испишите тренутну КСМЛ конфигурацију КВМ виртуалне машине:

# вирсх думпкмл сервер.впн.ру

Занима нас блок са описом процесора:

8 1000 / строј хвм        

Као што видите, управо смо одредили 8 вЦПУ. Промените конфигурацију:

# вирсх уреди сервер.впн.ру

И после додај:

   

Где:

  • домаћин-пролазак - режим емулације у коме ће се на виртуелном рачуналу приказати виртуални процесор чвора кластера (чворови).
  • соцкетс = '1' - назначите да је процесор 1
  • језгре = '4' - означавају да процесор има 4 језгре
  • нити = '2' - назначите да имамо 2 нити

Сачувајте конфигурацијску датотеку и покрените ВМ. Пријавите се у гостујућу ВМ помоћу Виндовс 10 и помоћу Управитеља задатака или Ресурса Монитор провјерите да ли ОС види све одабране виртуалне језгре.

Такође, својства система су сада почела да приказују физички процесор домаћина Интел (Р) Ксеон® Силвер 4114 ЦПУ, није виртуелно.

Тако смо успели да решимо проблем са оптерећењем ВМ-а, јер две језгре нису биле довољне за потпуну примену.

Конфигурација виртуалних процесора и броја језгара у ВМВаре-у

Можете промијенити начин на који је вЦПУ представљен за ВМВаре виртуалну машину из вСпхере Цлиент интерфејса.

  1. Искључите ВМ и отворите његове поставке;
  2. Прошири одељак ЦПУ;
  3. Промените конфигурацију ВМ-а тако да гост ОС види 2 процесора са 4 језгре. Промените вредност Језгра по утичници према 4. То значи да ће гостујући ОС видети два четворојезгрена процесора (2 утичнице са 4 језгре);
  4. Спремите измене и покрените ВМ.

НУМА архитектура и виртуални вЦПУ

Постоји неколико других аспеката вЦПУ-а и додјеле кернела виртуалним машинама које морате разумјети..

Када додељујете језгре на утичници, узмите у обзир НУМА архитектура (користи се у већини модерних ЦПУ-а). Не препоручује се доделити вашем ВМ-у број језгара по утичници (и укупан број вЦПУ-а) већи од језгара доступних на вашем физичком соцкет / процесору (НУМА чвор). Када се постави на један физички чвор НУМА, виртуална машина моћи ће користити брзи локални РАМ доступан на одређеном НУМА чвору. У супротном, за довршетак операције, процеси ће морати да сачекају одговор са другог НУМА чвора (који је нешто дужи).

Ако ВМ доделите две одвојене виртуелне утичнице, хипервизор их може покренути на различитим НУМА чворовима. Што није најбољи начин да се утиче на перформансе ВМ-а.

Ако број потребних вЦПУ-а прелази број језгара на 1 физичкој утичници (НУМА чвор), морате створити неколико виртуалних утичница (процесора) са потребним бројем језгара. Такође није препоручљиво користити непаран број процесора (боље је додати 1 вЦПУ)

То ће уштедети перформансе виртуелне машине..

На пример, за 2 хост процесора са 10 језгара (укупно 40 вЦПУс је доступно узимајући у обзир Хипер-Нити), када конфигуришете вЦПУ за ВМ-ове, оптимално је користити сљедеће конфигурације:

Потребна количина вЦПУБрој виртуалних утичница у поставкама ВМ-аБрој језгара на виртуалном процесору у поставкама ВМ-а
111
...
10110
11Није оптимално
1226
...
20210
У бесплатној верзији ЕСКСи не можете креирати ВМ-ове са више од 8 вЦПУ-а.

На пример, ВМ-ови са Мицрософт СКЛ Сервер 2016 Ентерприсе Едитион 16 вЦПУ у конфигурацији од 8 утичница са 2 језгре ће радити горе него у конфигурацији 2 утичнице са 8 језгара.

Такође, запамтите да су неке апликације лиценциране на физичким утичницама (као што је то био случај са старијим верзијама СКЛ Сервер-а). Понекад вам је исплативије лиценцирати један вишеједрни процесор него неколико процесора са мање језгара.

Савремене верзије Виндовс сервера лиценциране су у виртуализационом окружењу на посебан начин. Постоје и функције за лиценцирање процесора у ВМВаре вСпхере.