В прошлый раз в посте "VMware и NUMA: выбор правильного размера памяти VM" я рассказал о NUMA архитектуре, NUMA узлах (NUMA nodes) и о том, как оптимально сконфигурировать размер памяти виртуальной машины с учётом этих особенностей. Показал на своём примере, что можно создать не оптимально работающую виртуальную машину. При работе такой виртуальной машины процессор, обращаясь к оперативной памяти, не всегда может попадать в локальный NUMA узел. Это увеличивает задержки при обращении к памяти и снижает производительность виртуальной машины и приложений, работающих на ней.
После публикации поста мне удалось изменить конфигурацию одной из не оптимально настроенных виртуальных машин. И сегодня я хочу рассказать о результатах.
Итак, я говорю про виртуальную машину из прошлого поста с 8 vCPU и 96 Гб памяти, которая работает на сервере с NUMA узлом = 16 ядер (с учётом HT) + 96 Гб. Как вы помните, по статистике из команды esxtop при работе данной виртуальной машины только в 92% случаях процессор попадал в локальный NUMA узел (рис. 1).
Рис. 1. Статистика по NUMA виртуальной машины 8 vCPU + 96 Гб до оптимизации. |
Проанализировав требования к оперативной памяти со стороны приложений, я понял, что спокойно могу снизить количество оперативной памяти виртуальной машины. Изменил настройки, уменьшив оперативную память VM с 96 Гб до 80 Гб (рис. 2).
Рис. 2. Количество оперативной памяти сервера после изменения конфигурации. |
Рис. 3. Статистика по NUMA виртуальной машины 8 vCPU + 96 Гб после оптимизации. |
Автор: Шиболов Вячеслав Анатольевич
Комментариев нет:
Отправить комментарий