Как узнать, следует ли отключить виртуальную NUMA на виртуальных машинах, на которых выполняются старые приложения?

9

Из документов VMware:

Топология Virtual NUMA доступна для аппаратных виртуальных машин версии 8 и включена по умолчанию, если число виртуальных процессоров превышает восемь. Вы также можете вручную влиять на виртуальную топологию NUMA, используя дополнительные параметры конфигурации.

Допустим, у меня есть виртуальная машина, которой я назначил 8 процессоров - на ней работает Virtual NUMA. Если у меня есть старое приложение, не поддерживающее NUMA, работающее на сервере, не будет ли оно работать очень плохо или, по крайней мере, не так хорошо, как в режиме без V-NUMA?

Я предполагаю, что V-NUMA включен таким образом, потому что, если поставщик приложения рекомендует 8 или более ядер, программное обеспечение, скорее всего, будет осведомлено о NUMA. Или много приложений с поддержкой многоядерных процессоров, но без поддержки NUMA?

Как я могу определить узкое место, вызванное этой возможной проблемой?

Изменить: У вас была мысль, есть ли показатель в vCenter для мониторинга удаленных вызовов NUMA?

red888
источник
4
Я удалил предложенный ответ, потому что не думаю, что это то, что вы ищете. Если бы у меня было больше информации о конфигурации вашего хоста, я мог бы оказать дополнительную помощь. Мое личное мнение таково, что в целом vNUMA не наносит вреда приложениям, не относящимся к numa, но это не просто ответ. Существует большое количество переменных, которые могут повлиять на производительность виртуальной машины, и за годы работы с VMware я никогда не считал, что vNUMA является виновником проблем с производительностью.
Stewpudaso

Ответы:

1

В статье: « NUMA Deep Dive Part 1: от UMA до NUMA » рекомендуется « Intel Latency Checker v3.5 », более короткая статья « VMware vSphere. Почему проверка конфигурации NUMA так важна! » ( Откуда я и получил эту ссылку) объясняет:

«Основной недостаток заключается в том, что доступ к процессорной памяти всегда самый быстрый, когда процессор может получить доступ к своей локальной памяти. Узлы NUMA - это пары ЦП и памяти. Как правило, сокет ЦП и ближайшие банки памяти создают узел NUMA. Всякий раз, когда ЦПУ необходим доступ к памяти другого узла NUMA, он не может получить к нему доступ напрямую, но требуется для доступа к нему через ЦП, владеющий памятью ».

Поэтому настройте NUMA правильно, с достаточным объемом памяти для каждого ЦП, прежде чем загружать VMM и выделять vNUMA.

Под VMware вы можете использовать esxtop, набрать «m», «f» и «G», чтобы включить информацию NUMA. Узнайте больше о esxtop здесь: YellowBricks и древние документы в VMWare: « Интерпретация статистики esxtop ».

После настройки NUMA вы можете проверить, что выделение vNUMA не требует нелокальной памяти с помощью инструмента Intel.

обкрадывать
источник