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

Внимание

Эта статья ссылается на CentOS, дистрибутив Linux, который приближается к состоянию конца жизни (EOL). Обратите внимание на использование и план соответствующим образом. Дополнительные сведения см. в руководстве centOS End Of Life.

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

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

Сервер серии 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 CentOS/RHEL 7.6+, Ubuntu 18.04+, SLES 15.4, WinServer 2016+
Поддержка Orchestrator CycleCloud, пакетная служба, AKS; параметры конфигурации кластера

Внимание

Этот документ ссылается на версию выпуска Linux, которая приближается или находится в конце жизни(EOL). Пожалуйста, рассмотрите возможность обновления до более текущей версии.

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