Partager via


Installer des pilotes GPU AMD sur des machines virtuelles Linux Azure ND MI300X v5

S’applique à : ✔️ machines virtuelles Linux

Ce document décrit les étapes d’installation et de mise à niveau du pilote AMD Linux sur une instance de machine virtuelle Azure ND MI300X v5. Trois scénarios clés sont abordés :

Exigences de la version

Remarque

Actuellement, les pilotes ROCm d’AMD prennent uniquement en charge MI300X sur Ubuntu 22.04 avec le noyau 5.15 et ROCm 6.2.2.

  • Système d’exploitation : Ubuntu 22.04
  • Noyau : 5.15
  • ROCm : 6.2.2
  • Démarrage sécurisé : Désactivé

L’utilisation de l’image de la Place de marché AzureHPC est l’approche recommandée. L’image comporte déjà les pilotes AMD et Infiniband préinstallés. Vous pouvez déployer via l’interface CLI ou le portail Azure.

Via l’interface CLI (az vm create) spécifiez l’image avec --image microsoft-dsvm:ubuntu-hpc:2204-rocm:latest.

Suivez ce lien pour déployer via le portail Azure. Cliquez sur « Obtenir maintenant » et choisissez « Ubuntu HPC 22.04 ROCm ».

Image du Marketplace

Installation de ROCm dans Ubuntu 22.04

Vérifier la distribution Linux

Vérifiez que le système a une version de Linux prise en charge. Pour obtenir les informations sur la distribution Linux, utilisez la commande suivante :

cat /etc/issue

Le résultat ressemble à l’exemple suivant

# Ubuntu 22.04.5 LTS \n \l

Passer à une version antérieure du noyau Linux

Pour vérifier la version du noyau de votre système Linux, utilisez la commande suivante :

uname -srmv

Le résultat ressemble à l’exemple suivant

# Linux 6.8.0-1026-azure #31~22.04.1-Ubuntu SMP Thu Mar 20 04:12:50 UTC 2025 x86_64

Revenir à la version 5.15 du noyau Linux

 sudo apt install -y linux-headers-5.15.0-1073-azure
 sudo apt install -y linux-image-5.15.0-1073-azure

Mettez à niveau l’option de menu grub par défaut. Le code de hachage (HASH) est lié au numéro de la révision du noyau (XXXX dans 5.15.0-XXXX-azure). Il se trouve dans /boot/grub/grub.cfg

sudo sed -i "s|GRUB_DEFAULT=.*|GRUB_DEFAULT='gnulinux-advanced-5cec22f9-d9ef-44de-8258-c171f96f3dc4>gnulinux-5.15.0-1073-azure-advanced-5cec22f9-d9ef-44de-8258-c171f96f3dc4'|g" /etc/default/grub

sudo sed -i 's/^GRUB_CMDLINE_LINUX=.*/GRUB_CMDLINE_LINUX="panic=0 nowatchdog msr.allow_writes=on nokaslr amdgpu.noretry=1 pci=realloc=off console=ttyS0,115200n8 video=astdrmfb video=efifb:off ibt=off"/' /etc/default/grub

sudo update-grub
sudo reboot

*** Important: *** Confirmer la version rétrogradée de votre noyau Linux

uname -srmv
# Linux 5.15.0-1073-azure #82-Ubuntu SMP Mon Sep 2 11:36:34 UTC 2024 x86_64

Supprimer les anciens noyaux

sudo apt purge -y linux-headers-6.*-azure linux-image-6.*-azure

Installer les pilotes AMDGPU

Les instructions d’installation du pilote de périphérique sont fournies ici

wget https://repo.radeon.com/amdgpu-install/6.2.2/ubuntu/jammy/amdgpu-install_6.2.60202-1_all.deb
sudo apt install ./amdgpu-install_6.2.60202-1_all.deb
sudo amdgpu-install --usecase=rocm

Confirmer la version du pilote AMDGPU

cat /opt/rocm/.info/version
# 6.2.2-116

Charger le pilote AMDGPU

Ajoutez-vous-même au groupe de rendu et de vidéo à l’aide de la commande suivante

sudo modprobe -r hyperv_drm
sudo modprobe  amdgpu ip_block_mask=0x7f

Vérifiez l’installation du pilote GPU avec rocm-smi:

============================================ ROCm System Management Interface ============================================
====================================================== Concise Info ======================================================
Device  Node  IDs              Temp        Power     Partitions          SCLK    MCLK    Fan  Perf  PwrCap  VRAM%  GPU%
              (DID,     GUID)  (Junction)  (Socket)  (Mem, Compute, ID)
==========================================================================================================================
0       2     0x74b5,   65402  49.0°C      160.0W    NPS1, N/A, 0        131Mhz  900Mhz  0%   auto  750.0W  0%     0%
1       3     0x74b5,   27175  50.0°C      160.0W    NPS1, N/A, 0        132Mhz  900Mhz  0%   auto  750.0W  0%     0%
2       4     0x74b5,   16561  47.0°C      155.0W    NPS1, N/A, 0        131Mhz  900Mhz  0%   auto  750.0W  0%     0%
3       5     0x74b5,   54764  47.0°C      160.0W    NPS1, N/A, 0        131Mhz  900Mhz  0%   auto  750.0W  0%     0%
4       6     0x74b5,   10760  46.0°C      160.0W    NPS1, N/A, 0        131Mhz  900Mhz  0%   auto  750.0W  0%     0%
5       7     0x74b5,   48981  49.0°C      163.0W    NPS1, N/A, 0        132Mhz  900Mhz  0%   auto  750.0W  0%     0%
6       8     0x74b5,   32548  45.0°C      156.0W    NPS1, N/A, 0        131Mhz  900Mhz  0%   auto  750.0W  0%     0%
7       9     0x74b5,   60025  50.0°C      160.0W    NPS1, N/A, 0        131Mhz  900Mhz  0%   auto  750.0W  0%     0%
==========================================================================================================================
================================================== End of ROCm SMI Log ===================================================

Mise à niveau de ROCm dans Ubuntu 22.04

Supprimez le amdgpu module du noyau et désinstallez rocm.

modprobe -r amdgpu
sudo amdgpu-uninstall

Suivez les instructions pour installer les pilotes AMDGPU pour installer les nouveaux pilotes.