Поделиться через


Обзор виртуальной машины серии HPC

Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Универсальные масштабируемые наборы

Достижение максимальной производительности приложений HPC на базе масштабируемых процессоров Intel Xeon требует продуманного подхода к размещению процессов на этой новой архитектуре. Здесь мы рассмотрим нашу реализацию приложений HPC на виртуальных машинах Azure серии HC. Мы будем использовать термин pNUMA для ссылки на физический домен NUMA и vNUMA, чтобы ссылаться на виртуализированный домен NUMA. Аналогичным образом мы будем использовать термин "pCore", чтобы ссылаться на физические ядра ЦП и "vCore", чтобы ссылаться на виртуализированные ядра ЦП.

Сервер серии HC оснащен двумя 24-ядерными ЦП Intel Xeon Platinum 8168, предлагающими в общей сложности 48 физических ядер. Каждый ЦП представляет собой один домен pNUMA и имеет единый доступ к шести каналам DRAM. Размер кэша уровня 2 ЦП Intel Xeon Platinum в 4 раза больше, чем у предыдущих поколений (256 КБ/ядро -> 1 МБ/ядро). Кроме того, кэш уровня 3 сокращен по сравнению с предыдущими процессорами Intel (2,5 МБ/ядро -> 1,375 МБ/ядро).

Описанная выше топология также переносится в конфигурацию низкоуровневой оболочки серии HC. Чтобы работа низкоуровневой оболочки Azure не мешала работе виртуальной машины, мы резервируем физические ядра 0–1 и 24–25 (т. е. первые 2 физических ядра каждого сокета). Затем мы назначаем все оставшиеся ядра доменов pNUMA виртуальной машине. Таким образом, виртуальная машина получит:

(2 vNUMA domains) * (22 cores/vNUMA) = 44 ядер на виртуальную машину

Виртуальная машина не знает, что ей не предоставлены физические ядра 0–1 и 24–25. Таким образом, она предоставляет каждый домен vNUMA так, как если бы у него было 22 собственных ядра.

ЦП Intel Xeon Platinum, Gold и Silver также представляют встроенную сеть 2D-сетки для обмена данными внутри и снаружи сокета ЦП. Мы настоятельно рекомендуем закреплять процесс для обеспечения оптимальной производительности и согласованности. Виртуальные машины серии HC поддерживают закрепление процессов, так как для гостевой виртуальной машины предоставляется базовый чип "как есть".

На следующей схеме показано разделение ядер, зарезервированных для низкоуровневой оболочки Azure и виртуальной машины серии HC.

Разделение ядер, зарезервированное для низкоуровневой оболочки Azure и виртуальной машины серии HC

Характеристики оборудования

Характеристики оборудования Виртуальная машина серии HC
Ядра 44 (HT отключено)
ЦП Intel Xeon Platinum 8168
Частота ЦП (без AVX) 3,7 ГГц (одно ядро), 2,7–3,4 ГГц (все ядра)
Память 8 ГБ/ядро (всего 352)
Локальный диск Диск SSD на 700 ГБ
Infiniband EDR Mellanox ConnectX-5 на 100 Гб
Network Ethernet 50 ГБ/с (доступно 40 ГБ/с) Azure второго поколения SmartNIC

Характеристики программного обеспечения

Характеристики программного обеспечения Виртуальная машина серии HC
Максимальный размер задания MPI 13 200 ядер (300 виртуальных машин в одном масштабируемом наборе виртуальных машин с параметром singlePlacementGroup = true)
Поддержка MPI HPC-X, Intel MPI, OpenMPI, MVAPICH2, MPICH, платформа MPI
Дополнительные платформы UCX, libfabric, PGAS
Поддержка службы хранилища Microsoft Azure Диски уровня "Стандарт" и "Премиум" (максимум 4 диска)
Поддержка ОС для SRIOV RDMA RHEL 7.6+, Ubuntu 20.04+, SLES 15.4, WinServer 2016+
Поддержка Orchestrator CycleCloud, пакетная служба, AKS; параметры конфигурации кластера

Примечание.

Официальная поддержка уровня ядра от AMD начинается с RHEL 8.6 и AlmaLinux 8.6, которая является производным от RHEL.

Следующие шаги