шпаргалка по vmware CPU Scheduler

Nov 07, 2013 16:23

Relaxed co-scheduling
Процессоры одной ВМ ожидающие исполнения (находятся в очереди ready) не обязательно должны попадать на процессор все вместе. Если исполняются не все vCPU одной ВМ, то гипервизор считает разницу в прогрессе ("skew") между vCPU с наибольшим и наименьшем прогрессом. Если skew превышает определенное значение (несколько миллисекунд), то vCPU с наибольшим прогрессом снимается с процессора (co-stop) то тех пор пока отстающий vCPU не начнет исполняться, после чего остановленный vCPU сможет вернуться на процессор (co-start), либо в очередь ready, если свободных процессоров нет
Skew считается между vCPU исполняющимися на процессоре и vCPU, которые не находятся ни на процессоре ни в очереди IDLE

NUMA
  Если ВМ работает на сервере с NUMA архитектурой, то для машины задается домашняя NUMA нода. Все vCPU располагаются в одной ноде и память по возможности выделяется из домашней ноды. Если количество vCPU машины превышает размер NUMA ноды сервера ("wide VM"), то для такой машины создается несколько NUMA клиентов и для каждого клиента задается домашняя NUMA нода. При этом выделение памяти чередуется между всеми домашними нодами
 Начиная с vSphere 5.0, для машин поддерживающих vNUMA, память для NUMA клиента выделяется из домашней ноды

vNUMA
vNUMA - проброс информации о физической NUMA архитектуре в гостевую ОС
Работает на ВМ начиная с 8-й версии виртуального железа и старше. По умолчанию включена на ВМ с количеством ядер больше 8 (9 и больше).
Данные параметр можно изменить добавив в файл конфигурации ВМ параметр
numa.vcpu.min.

Для ВМ с включенной vNUMA количество ядер на NUMA клиента определяется:
- Если параметр cores per socket = 1 (количество vCPU задается количеством сокетов), то vNUMA топология формируется автоматически. Если количество vCPU меньше или равно размеру NUMA ноды, то создается 1 NUMA клиент. Если больше, то размер ноды подбирается исходя из размера физической NUMA ноды. Например ВМ 8 sockets, 1 cores per socket запускается на сервере 2х6CPU, то машина будет состоять из 2 NUMA узлов по 3 ядра.

- Если cores per socket отлично от 1, то размер vNUMA ноды будет равен размеру виртуального сокета
В данном случае, если размер vNUMA ноды не превышает размер физической, то размер физического NUMA клиента ВМ будет равен размеру виртуальной ноды. Если превышает, то возможны варианты. См. доку по шедулеру

vm

Previous post Next post
Up