Virtuális gépek konfigurálása és optimalizálása
A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek ✔️ Windows rendszerű virtuális gépek Rugalmas méretezési ✔️ csoportok ✔️ Egységes méretezési csoportok
Ez a cikk útmutatást nyújt az InfiniBand-kompatibilis HB-sorozatú és N sorozatú virtuális gépek HPC-hez való konfigurálásához és optimalizálásához.
VM-lemezképek
Az InfiniBand (IB) által engedélyezett virtuális gépeken a megfelelő IB-illesztőprogramok szükségesek az RDMA engedélyezéséhez.
- A Marketplace-en található Ubuntu-HPC virtuálisgép-rendszerképek előre konfigurálva lesznek a megfelelő NVIDIA IB-illesztőprogramokkal és GPU-illesztőprogramokkal.
- A Marketplace AlmaLinux-HPC virtuálisgép-rendszerképe előre konfigurálva van a megfelelő NVIDIA IB-illesztőprogramokkal és GPU-illesztőprogramokkal.
Ezek a virtuálisgép-rendszerképek az Ubuntu és az AlmaLinux marketplace virtuálisgép-rendszerképeken alapulnak. A virtuálisgép-rendszerképek alap marketplace-lemezképekből való létrehozásához használt szkriptek az azhpc-images adattárban találhatók.
GPU-kompatibilis N sorozatú virtuális gépeken a megfelelő GPU-illesztőkre is szükség van. Ez a következő módszerekkel érhető el:
- Használja az Ubuntu-HPC virtuálisgép-rendszerképeket vagy az ALMALinux-HPC virtuálisgép-rendszerképeket , amelyek előre konfigurálva lesznek az NVIDIA GPU-illesztőprogramokkal és a GPU számítási szoftververemével (CUDA, NCCL).
- Adja hozzá a GPU-illesztőprogramokat a virtuálisgép-bővítményeken keresztül.
- Telepítse manuálisan a GPU-illesztőprogramokat.
- A Marketplace-en néhány más virtuálisgép-rendszerkép is előtelepítve van az NVIDIA GPU-illesztőprogramokkal, beleértve az NVIDIA néhány virtuálisgép-rendszerképét is.
A számítási feladatok Linux-disztribúciójától és verzióigényétől függően az Ubuntu-HPC virtuálisgép-rendszerképek és az AlmaLinux-HPC virtuálisgép-rendszerképek a legegyszerűbben az Azure-beli HPC- és AI-számítási feladatok használatbavétele. Azt is javasoljuk, hogy egyéni virtuálisgép-rendszerképeket hozzon létre a számítási feladatok egyéni testreszabásával és konfigurálásával az újrafelhasználáshoz.
A HPC virtuálisgép-rendszerképek által támogatott virtuálisgép-méretek
InfiniBand OFED-támogatás
A legújabb Azure HPC Marketplace-rendszerképek mellanox OFED 5.1 és újabb verzióval rendelkeznek, amelyek nem támogatják a ConnectX3-Pro InfiniBand kártyákat. A ConnectX-3 Pro InfiniBand kártyákhoz MOFED 4.9 LTS-verzió szükséges. Ezek a virtuálisgép-rendszerképek csak a ConnextX-5 és az újabb InfiniBand kártyákat támogatják. A következő virtuálisgép-mérettámogatási mátrix az InfiniBand OFED-hez ezekben a HPC virtuálisgép-rendszerképekben:
- HB-sorozat: HB, HC, HBv2, HBv3, HBv4
- N sorozat: NDv2, NDv4
GPU-illesztő támogatása
Jelenleg csak az Ubuntu-HPC virtuálisgép-rendszerképek és az AlmaLinux-HPC virtuálisgép-rendszerképek konfigurálhatók előre az NVIDIA GPU-illesztőprogramokkal és a GPU számítási szoftververemével (CUDA, NCCL).
A támogatott HPC virtuálisgép-rendszerképek GPU-illesztőprogramjainak virtuálisgép-mérettámogatási mátrixa a következő:
- N-sorozat: Az NDv2, NDv4 virtuálisgép-méretek az NVIDIA GPU-illesztőprogramok és a GPU számítási szoftververem (CUDA, NCCL) segítségével támogatottak.
- Az N sorozat többi "NC" és "ND" virtuálisgép-méretet az NVIDIA GPU-illesztőprogramok támogatják.
Az N sorozat összes virtuálisgép-mérete támogatja a Gen 2 virtuális gépeket, de néhány régebbi is támogatja az 1. generációs virtuális gépeket. A Gen 2 támogatása a rendszerkép URL-címének vagy verziójának végén egy "01" jellel is jelezve van.
SR-IOV-kompatibilis virtuális gépek
Ubuntu-HPC virtuálisgép-rendszerképek
Az SR-IOV-kompatibilis RDMA-kompatibilis virtuális gépek esetében az Ubuntu-HPC virtuálisgép-rendszerképek 18.04-s, 20.04-s és 22.04-s verziói alkalmasak. Ezek a virtuálisgép-rendszerképek előre konfigurálva vannak a Mellanox OFED illesztőprogramokkal RDMA, NVIDIA GPU-illesztőprogramok, GPU számítási szoftververem (CUDA, NCCL) és gyakran használt MPI-kódtárakkal és tudományos számítási csomagokkal. Tekintse meg a virtuális gép mérettámogatási mátrixát.
A virtuálisgép-rendszerképek elérhető vagy legújabb verziói a parancssori felület vagy a Marketplace használatával az alábbi információkkal listázhatók.
"publisher": "Microsoft-DSVM", "offer": "Ubuntu-HPC",
Az Ubuntu-HPC virtuálisgép-rendszerképek alapszintű Ubuntu Marketplace-rendszerképből való létrehozásához használt szkriptek az azhpc-images adattárban találhatók.
AlmaLinux-HPC virtuálisgép-rendszerképek
Az SR-IOV-kompatibilis RDMA-kompatibilis virtuális gépek esetében az AlmaLinux-HPC virtuálisgép-rendszerképek 8.5-ös, 8.6-os és 8.7-ös verziói alkalmasak. Ezek a virtuálisgép-rendszerképek előre konfigurálva vannak a Mellanox OFED illesztőprogramokkal RDMA, NVIDIA GPU-illesztőprogramok, GPU számítási szoftververem (CUDA, NCCL) és gyakran használt MPI-kódtárakkal és tudományos számítási csomagokkal. Tekintse meg a virtuális gép mérettámogatási mátrixát.
A virtuálisgép-rendszerképek elérhető vagy legújabb verziói a parancssori felület vagy a Marketplace használatával az alábbi információkkal listázhatók.
"publisher": "AlmaLinux", "offer": "AlmaLinux-HPC",
Az AlmaLinux-HPC virtuálisgép-rendszerképek alapSzintű AlmaLinux Marketplace-rendszerképből való létrehozásához használt szkriptek az azhpc-images adattárban találhatók.
Emellett az Ubuntu-HPC virtuálisgép-rendszerképek és az AlmaLinux-HPC virtuálisgép-rendszerképek további részletei, valamint azok üzembe helyezése az Azure HPC virtuálisgép-rendszerképekben található.
RHEL virtuálisgép-rendszerképek
A Marketplace-en lévő rhEL-alapú nem HPC virtuálisgép-rendszerképek konfigurálhatók az SR-IOV-kompatibilis RDMA-kompatibilis virtuális gépeken való használatra. További információ az InfiniBand engedélyezéséről és az MPI beállításáról a virtuális gépeken.
Ubuntu virtuálisgép-rendszerképek
Az Ubuntu Server 20.04 LTS és 22.04 LTS virtuálisgép-rendszerképek a Marketplace-en SR-IOV és nem SR-IOV RDMA-kompatibilis virtuális gépek esetében egyaránt támogatottak. További információ az InfiniBand engedélyezéséről és az MPI beállításáról a virtuális gépeken.
- Az InfiniBand engedélyezésére vonatkozó utasítások az Ubuntu virtuálisgép-rendszerképeken egy TechCommunity-cikkben találhatók.
Feljegyzés
A Mellanox OFED 5.1 és újabb verziók nem támogatják a ConnectX3-Pro InfiniBand kártyákat az SR-IOV-kompatibilis N sorozatú virtuális gépeken az FDR InfiniBand (pl. NCv3) használatával. Használja az LTS Mellanox OFED 4.9-0.1.7.0-s vagy régebbi verzióját az N sorozatú virtuális gépeken ConnectX3-Pro kártyákkal. További információ: Linux InfiniBand Drivers.
SUSE Linux Enterprise Server virtuálisgép-rendszerképek
Támogatott az SLES 12 SP3 a HPC-hez, az SLES 12 SP3 a HPC-hez (Prémium), az SLES 12 SP1 a HPC-hez (Prémium), az SLES 12 SP4 és az SLES 15 virtuálisgép-rendszerképek a Marketplace-en. Ezek a virtuálisgép-rendszerképek előre telepítve vannak az RDMA hálózati közvetlen illesztőprogramjaival (nem SR-IOV virtuálisgép-méreteken) és az Intel MPI 5.1-es verziójával. További információ az MPI beállításáról a virtuális gépeken.
Virtuális gépek optimalizálása
Az alábbiakban felsorolunk néhány választható optimalizálási beállítást a virtuális gép jobb teljesítményéhez.
LIS frissítése
Ha a működéshez vagy a teljesítményhez szükséges, a Linux Integration Services (LIS) illesztőprogramjai telepíthetők vagy frissíthetők a támogatott operációsrendszer-disztribúciókon, különösen az egyéni rendszerkép vagy egy régebbi operációsrendszer-verzió, például az RHEL 6.x vagy a 7.x korábbi verziójának használatával.
wget https://aka.ms/lis
tar xzf lis
pushd LISISO
sudo ./upgrade.sh
Memória visszanyerés
A teljesítmény javítása a memória automatikus visszaigénylésével a távoli memóriahozzáférés elkerülése érdekében.
sudo echo 1 >/proc/sys/vm/zone_reclaim_mode
A virtuális gép újraindítása után a memóriamód állandó marad:
sudo echo "vm.zone_reclaim_mode = 1" >> /etc/sysctl.conf sysctl -p
Tűzfal és SELinux letiltása
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
Processzorteljesítmény letiltása
sudo service cpupower status
Ha engedélyezve van, tiltsa le:
sudo service cpupower stop
sudo systemctl disable cpupower
A WALinuxAgent konfigurálása
sudo sed -i -e 's/# OS.EnableRDMA=y/OS.EnableRDMA=y/g' /etc/waagent.conf
Ha lehetséges, a WALinuxAgent le van tiltva egy feladat futtatása előtt, majd engedélyezve van a feladat utáni feladat, hogy a virtuálisgép-erőforrások maximális rendelkezésre állása elérhető legyen a HPC számítási feladat számára.
Következő lépések
- További információ az InfiniBand engedélyezéséről az InfiniBand-kompatibilis HB-sorozatú és N sorozatú virtuális gépeken.
- További információ a különböző támogatott MPI-kódtárak virtuális gépeken való telepítéséről és futtatásáról.
- Tekintse át a HBv3-sorozatok áttekintését és a HC-sorozatok áttekintését.
- Az Azure Compute Tech Community blogjaiban tájékozódhat a legújabb bejelentésekről, a HPC számítási feladatokra vonatkozó példáiról és teljesítményeredményeiről.
- A HPC-számítási feladatok futtatásának magasabb szintű architekturális nézetét az Azure nagy teljesítményű számítástechnika (HPC) című témakörben tekintheti meg.