Настройка и оптимизация виртуальных машин
Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Универсальные масштабируемые наборы
В этой статье содержатся некоторые рекомендации по настройке и оптимизации виртуальных машин серии HB с поддержкой InfiniBand и серии N для HPC.
Образы ВМ
На виртуальных машинах с поддержкой InfiniBand (IB) необходимы соответствующие драйверы IB для включения RDMA.
- Образы виртуальных машин Ubuntu-HPC в Marketplace предварительно настроены с соответствующими драйверами NVIDIA IB и драйверами GPU.
- Образы виртуальных машин AlmaLinux-HPC в Marketplace предварительно настроены с соответствующими драйверами NVIDIA IB и драйверами GPU.
Эти образы виртуальных машин основаны на базовых образах виртуальных машин Ubuntu и AlmaLinux Marketplace. Скрипты, используемые при создании этих образов виртуальных машин на основе базовых образов Marketplace, находятся в репозитории azhpc-images.
На виртуальных машинах серии N с поддержкой GPU также требуются соответствующие драйверы GPU. Для этого могут использоваться следующие методы:
- Используйте образы виртуальных машин Ubuntu-HPC или образы виртуальных машин AlmaLinux-HPC, которые предварительно настроены с помощью драйверов GPU NVIDIA и стека программного обеспечения вычислений GPU (CUDA, NCCL).
- Добавление драйверов GPU с помощью расширений виртуальной машины
- Установка драйверов GPU вручную.
- Некоторые другие образы виртуальных машин в Marketplace также предварительно установлены с драйверами GPU NVIDIA, включая некоторые образы виртуальных машин из NVIDIA.
В зависимости от потребностей дистрибутива и версии рабочих нагрузок образы виртуальных машин Ubuntu-HPC и образы виртуальных машин AlmaLinux-HPC в Marketplace — самый простой способ приступить к работе с рабочими нагрузками HPC и AI в Azure. Также рекомендуется создавать пользовательские образы виртуальных машин с определенной настройкой рабочей нагрузки и конфигурацией для повторного использования.
Размеры виртуальных машин, поддерживаемые образами виртуальных машин HPC
Поддержка InfiniBand OFED
Новейшие образы marketplace Azure HPC включают Mellanox OFED 5.1 и более поздних версий, которые не поддерживают карты ConnectX3-Pro InfiniBand. Для карт ConnectX-3 Pro InfiniBand требуется версия MOFED 4.9 LTS. Эти образы виртуальных машин поддерживают только карты ConnextX-5 и карты InfiniBand более новых версий. Следующая матрица поддержки размера виртуальной машины для InfiniBand OFED в этих образах виртуальных машин HPC:
Поддержка драйверов GPU
В настоящее время только образы виртуальных машин Ubuntu-HPC и образы виртуальных машин AlmaLinux-HPC предварительно настроены с драйверами GPU NVIDIA и стеком вычислений GPU (CUDA, NCCL).
Применяется следующая таблица поддержки размеров виртуальных машин для драйверов GPU в поддерживаемых образах виртуальных машин HPC:
- N-серия: NDv2, размеры виртуальных машин NDv4 поддерживаются с драйверами GPU NVIDIA и стеком вычислительного программного обеспечения GPU (CUDA, NCCL).
- Другие размеры виртуальных машин NC и ND в серии N поддерживаются драйверами GPU NVIDIA.
Все размеры виртуальных машин в серии N подходят для виртуальных машин Gen 2, хотя некоторые более старые версии также поддерживают виртуальные машины поколения Gen 1. Поддержка Gen 2 также обозначается цифрой "01" в конце унифицированного имени ресурса образа или версии.
Виртуальные машины с поддержкой SR-IOV
Образы виртуальных машин Ubuntu-HPC
Для виртуальных машин с поддержкой RDMA с поддержкой SR-IOV образы виртуальных машин Ubuntu-HPC версии 18.04, 20.04 и 22.04 подходят. Эти образы виртуальных машин предварительно настроены с драйверами Mellanox OFED для RDMA, драйверов GPU NVIDIA, стека вычислительного программного обеспечения GPU (CUDA, NCCL) и часто используемых библиотек MPI и научных вычислительных пакетов. См. матрицу поддержки размера виртуальной машины.
Доступные или последние версии образов виртуальных машин можно отобразить вместе с приведенной ниже информацией при помощи CLI или Marketplace.
"publisher": "Microsoft-DSVM", "offer": "Ubuntu-HPC",
Скрипты, используемые при создании образов виртуальных машин HPC на основе базового образа Ubuntu Marketplace, находятся в репозитории azhpc-images.
Образы виртуальных машин AlmaLinux-HPC
Для виртуальных машин с поддержкой RDMA с поддержкой SR-IOV образы виртуальных машин AlmaLinux-HPC версии 8.5, 8.6 и 8.7 подходят. Эти образы виртуальных машин предварительно настроены с драйверами Mellanox OFED для RDMA, драйверов GPU NVIDIA, стека вычислительного программного обеспечения GPU (CUDA, NCCL) и часто используемых библиотек MPI и научных вычислительных пакетов. См. матрицу поддержки размера виртуальной машины.
Доступные или последние версии образов виртуальных машин можно отобразить вместе с приведенной ниже информацией при помощи CLI или Marketplace.
"publisher": "AlmaLinux", "offer": "AlmaLinux-HPC",
Скрипты, используемые при создании образов виртуальных машин AlmaLinux-HPC из базового образа AlmaLinux Marketplace, находятся в репозитории azhpc-images.
Кроме того, дополнительные сведения о том, что входит в образы виртуальных машин Ubuntu-HPC и образы виртуальных машин AlmaLinux-HPC, а также о том, как их развернуть в образах виртуальных машин Azure HPC.
Образы виртуальных машин RHEL
Базовые образы виртуальных машин, отличных от HPC, на основе RHEL в Marketplace, можно настроить для использования на виртуальных машинах с поддержкой RDMA с поддержкой SR-IOV. Узнайте больше о включении InfiniBand и настройке MPI на виртуальных машинах.
Образы виртуальных машин Ubuntu
Базовые образы виртуальных машин Ubuntu Server 20.04 LTS и 22.04 LTS в Marketplace поддерживаются как для виртуальных машин с поддержкой SR-IOV, так и для виртуальных машин с поддержкой SR-IOV RDMA. Узнайте больше о включении InfiniBand и настройке MPI на виртуальных машинах.
- Инструкции по включению InfiniBand в образах виртуальных машин Ubuntu см. в статье TechCommunity.
Примечание.
Mellanox OFED 5.1 и более поздних версий не поддерживают карты ConnectX3-Pro InfiniBand на размерах виртуальных машин серии N с поддержкой SR-IOV с FDR InfiniBand (например, NCv3). Используйте LTS Mellanox OFED версии 4.9–0.1.7.0 или более ранних версий на виртуальных машинах серии N с картами ConnectX3-Pro. См. дополнительные сведения о драйверах Linux InfiniBand.
Образы виртуальных машин SUSE Linux Enterprise Server
В Marketplace поддерживаются следующие образы виртуальных машин: SLES 12 SP3 для HPC, SLES 12 SP3 для HPC (Премиум), SLES 12 SP1 для HPC, SLES 12 SP1 для HPC (Премиум), SLES 12 SP4 и SLES 15. Эти образы виртуальных машин предварительно загружены с драйверами RDMA (на размерах виртуальных машин, отличных от SR-IOV) и Intel MPI версии 5.1. См. дополнительные сведения о настройке MPI на виртуальных машинах.
Оптимизация виртуальных машин
Ниже приведены некоторые дополнительные параметры оптимизации для повышения производительности виртуальной машины.
Обновление LIS
При необходимости для функциональных возможностей или производительности драйверы Служб Linux Integration Services (LIS) можно установить или обновить в поддерживаемых дистрибутивах ОС, особенно при развертывании с помощью пользовательского образа или более старой версии ОС, например RHEL 6.x или более ранней версии 7.x.
wget https://aka.ms/lis
tar xzf lis
pushd LISISO
sudo ./upgrade.sh
Восстановление памяти
Повысьте производительность за счет автоматического освобождения памяти для предотвращения удаленного доступа к памяти.
sudo echo 1 >/proc/sys/vm/zone_reclaim_mode
Сохраняйте постоянный режим памяти после перезагрузки виртуальной машины:
sudo echo "vm.zone_reclaim_mode = 1" >> /etc/sysctl.conf sysctl -p
Отключение брандмауэра и SELinux
sudo systemctl stop iptables.service
sudo systemctl disable iptables.service
sudo systemctl mask firewalld
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
sudo iptables -nL
sudo sed -i -e's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
Отключение команды cpupower
sudo service cpupower status
Если этот параметр включен, отключите его:
sudo service cpupower stop
sudo systemctl disable cpupower
Настройка WALinuxAgent
sudo sed -i -e 's/# OS.EnableRDMA=y/OS.EnableRDMA=y/g' /etc/waagent.conf
При необходимости WALinuxAgent может быть отключен перед запуском задания, а затем включена после задания для максимальной доступности ресурсов виртуальной машины в рабочей нагрузке HPC.
Следующие шаги
- Дополнительные сведения о включении InfiniBand на виртуальных машинах серии HB с поддержкой InfiniBand и серии N.
- См. дополнительные сведения об установке и запуске различных поддерживаемых библиотек MPI на виртуальных машинах.
- Ознакомьтесь с обзором серии HBv3 и обзором серии HC.
- Ознакомьтесь с последними объявлениями, примерами рабочей нагрузки HPC, а также результатами оценки производительности в блогах технического сообщества Вычислений Azure.
- Сведения о более высоком уровне архитектурного представления выполнения рабочих нагрузок HPC см. в статье Высокопроизводительные вычисления (HPC) в Azure.