Dela via


NVIDIA GPU-drivrutinstillägg för Linux

Det här tillägget installerar NVIDIA GPU-drivrutiner på virtuella Datorer i Linux N-serien (VM). Beroende på vm-familjen installerar tillägget CUDA- eller GRID-drivrutiner. När du installerar NVIDIA-drivrutiner med hjälp av det här tillägget godkänner och godkänner du villkoren i LICENSavtalet för NVIDIA End-User. Under installationsprocessen kan den virtuella datorn startas om för att slutföra drivrutinskonfigurationen.

Instruktioner för manuell installation av drivrutinerna och de aktuella versioner som stöds är tillgängliga. Det finns också ett tillägg för att installera NVIDIA GPU-drivrutiner på virtuella Datorer i Windows N-serien.

Anteckning

Med Säker start aktiverat måste alla os-startkomponenter (startinläsare, kernel och kerneldrivrutiner) signeras av betrodda utgivare (nyckel som är betrodd av systemet). Säker start stöds inte med Windows- eller Linux-tillägg. Mer information om hur du installerar GPU-drivrutiner manuellt med Säker start aktiverat finns i Konfiguration av GPU-drivrutinsinställningar i Azure N-serien för Linux.

Anteckning

GPU-drivrutinstilläggen uppdaterar inte drivrutinen automatiskt när tillägget har installerats. Om du behöver flytta till en nyare drivrutinsversion laddar du antingen ned och installerar drivrutinen manuellt eller tar bort och lägger till tillägget igen.

Förutsättningar

Operativsystem

Det här tillägget stöder följande os-distributioner, beroende på drivrutinsstöd för den specifika operativsystemversionen:

Chaufför Linux: Ubuntu Linux: Red Hat Enterprise Linux
CUDA 20.04 LTS 7,9
RUTNÄT 22.04 LTS
24.04 LTS
8.2

Anteckning

De senaste CUDA-drivrutinerna som stöds för virtuella datorer i NC-serien är för närvarande 470.82.01. Senare drivrutinsversioner stöds inte på K80-korten i NC. Medan tillägget uppdateras med den här supporten för NC installerar du CUDA-drivrutiner manuellt för K80-kort i NC-serien.

Viktigt!

Dokumentet hänvisar till en version av Linux som är nära eller vid slutet av livscykeln (EOL). Överväg att uppdatera till en mer aktuell version.

Internet-anslutning

Microsoft Azure-tillägget för NVIDIA GPU-drivrutiner kräver att den virtuella måldatorn är ansluten till Internet och har åtkomst.

Tilläggsschema

Följande JSON visar schemat för tillägget:

{
  "name": "<myExtensionName>",
  "type": "extensions",
  "apiVersion": "2015-06-15",
  "location": "<location>",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
  ],
  "properties": {
    "publisher": "Microsoft.HpcCompute",
    "type": "NvidiaGpuDriverLinux",
    "typeHandlerVersion": "1.6",
    "autoUpgradeMinorVersion": true,
    "settings": {
    }
  }
}

Egenskaper

Namn Värde/exempel Datatyp
apiVersion 2015-06-15 datum
förläggare Microsoft.HpcCompute sträng
typ NvidiaGpuDriverLinux sträng
typeHandlerVersion 1.6 heltal

Inställningar

Alla inställningar är valfria. Standardbeteendet är att inte uppdatera kerneln om det inte krävs för drivrutinsinstallation och installera den senaste drivrutinen och CUDA-verktygslådan (i förekommande fall).

Namn Beskrivning Standardvärde Giltiga värden Datatyp
uppdateraOS Uppdatera kerneln även om den inte krävs för drivrutinsinstallation. falskt SANT, FALSKT booleskt
drivrutinsversion NV: GRID-drivrutinsversion.
NC/ND: CUDA verktygssats version. De senaste drivrutinerna för den valda CUDA installeras automatiskt.
senaste Lista över drivrutinsversioner som stöds sträng
installCUDA Installera CUDA-verktygslådan. Endast relevant för virtuella datorer i NC/ND-serien. sann SANT, FALSKT booleskt

Driftsättning

Azure Portal

Du kan distribuera Azure NVIDIA VM-tillägg i Azure Portal.

  1. I en webbläsare går du till Azure-portalen.

  2. Gå till den virtuella dator där du vill installera drivrutinen.

  3. På den vänstra menyn väljer du Tillägg.

    Skärmbild som visar hur du väljer Tillägg på Menyn i Azure-portalen.

  4. Välj Lägg till.

    Skärmbild som visar hur du lägger till ett V M-tillägg för det valda V M.

  5. Bläddra för att hitta och välj NVIDIA GPU Driver Extension och välj sedan Nästa.

    Skärmbild som visar val av NVIDIA G P U-drivrutinstillägg.

  6. Välj Granska + Skapa och välj Skapa. Vänta några minuter för att drivrutinen ska installeras.

    Skärmbild som visar hur du väljer knappen Granska + skapa.

  7. Kontrollera att tillägget har lagts till i listan över installerade tillägg.

    Skärmbild som visar det nya tillägget i listan över tillägg för V M.

Mall för Azure Resource Manager

Du kan använda Azure Resource Manager-mallar för att distribuera Azure VM-tillägg. Mallar är idealiska när du distribuerar en eller flera virtuella datorer som kräver konfiguration efter distributionen.

JSON-konfigurationen för ett tillägg för virtuella datorer kan kapslas i den virtuella datorresursen eller placeras på rot- eller översta nivån i en Resource Manager JSON-mall. Placeringen av JSON-konfigurationen påverkar värdet för resursnamnet och typen. Mer information finns i Ange namn och typ för underordnade resurser.

I följande exempel förutsätts att tillägget är kapslat i resursen för den virtuella datorn. När tilläggsresursen är kapslad placeras JSON i objektet för den "resources": [] virtuella datorn.

{
  "name": "myExtensionName",
  "type": "extensions",
  "location": "[resourceGroup().location]",
  "apiVersion": "2015-06-15",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', myVM)]"
  ],
  "properties": {
    "publisher": "Microsoft.HpcCompute",
    "type": "NvidiaGpuDriverLinux",
    "typeHandlerVersion": "1.6",
    "autoUpgradeMinorVersion": true,
    "settings": {
    }
  }
}

PowerShell

Set-AzVMExtension
    -ResourceGroupName "myResourceGroup" `
    -VMName "myVM" `
    -Location "southcentralus" `
    -Publisher "Microsoft.HpcCompute" `
    -ExtensionName "NvidiaGpuDriverLinux" `
    -ExtensionType "NvidiaGpuDriverLinux" `
    -TypeHandlerVersion 1.6 `
    -SettingString '{ `
	}'

Azure CLI (kommandoradsgränssnittet för Azure)

Följande exempel speglar föregående Resource Manager- och PowerShell-exempel:

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name NvidiaGpuDriverLinux \
  --publisher Microsoft.HpcCompute \
  --version 1.6

I följande exempel läggs även två valfria anpassade inställningar till som exempel för nondefault-drivrutinsinstallation. Mer specifikt uppdaterar den OS-kerneln till den senaste och installerar en specifik CUDA-verktygsversionsdrivrutin. Observera återigen att de --settings är valfria och standard. Om du uppdaterar kerneln kan tilläggsinstallationstiderna öka. Att välja en specifik (äldre) CUDA-verktygsversion kanske inte alltid är kompatibel med nyare kernels.

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name NvidiaGpuDriverLinux \
  --publisher Microsoft.HpcCompute \
  --version 1.6 \
  --settings '{ \
    "updateOS": true, \
    "driverVersion": "10.0.130" \
  }'

Felsökning och stöd

Felsöka

Du kan hämta data om tillståndet för tilläggsdistributioner från Azure Portal och med hjälp av Azure PowerShell och Azure CLI. Kör följande kommando för att se distributionstillståndet för tillägg för en viss virtuell dator:

Get-AzVMExtension -ResourceGroupName myResourceGroup -VMName myVM -Name myExtensionName
az vm extension list --resource-group myResourceGroup --vm-name myVM -o table

Resultat av körning av tillägg loggas till följande fil. Se den här filen för att spåra statusen för eventuella långvariga installationer och för att felsöka eventuella fel.

/var/log/azure/nvidia-vmext-status

Avslutningskoder

Slutkod Innebörd Möjlig åtgärd
0 Åtgärden lyckades
1 Felaktig användning av tillägget Kontrollera körningsutdataloggen.
10 Linux Integration Services för Hyper-V och Azure är inte tillgängliga eller installerade Kontrollera utdata från lspci.
11 NVIDIA GPU hittades inte i den här VM-storleken Använd en vm-storlek och ett operativsystem som stöds.
12 Bilderbjudandet stöds inte
tretton Vm-storlek stöds inte Använd en virtuell dator i N-serien för att distribuera.
14 Åtgärden misslyckades Kontrollera körningsutdataloggen.

Kända problem

  1. GRID-drivrutinen 16.x och 17.x har installationsproblem på Azure kernel 6.11. Nvidia arbetar med att lösa det här problemet genom att nedgradera Azure-kerneln till 6.8 genom att följa dessa steg. Försök att installera om drivrutinerna manuellt eller genom att använda ett tillägg efter nedgradering av kerneln till 6.8.
// Get the installed kernel. If kernel 6.11 is installed,  downgrade it to 6.8.
uname -a

// Install  kernel 6.8. Note that kernel  6.11  is not supported.
$ sudo apt install linux-image-6.8.0-1015-azure

// Get the list of installed kernels.
dpkg --list | egrep -i --color 'linux-image|linux-headers|linux-modules' | awk '{ print $2 }'

// Uninstall any 6.11 kernels.
sudo apt purge linux-headers-6.11.0-1013-azure  linux-image-6.11.0-1013-azure  linux-modules-6.11.0-1013-azure

// Run the following command to ensure only 6.8 images, headers, and modules are installed and no other versions are present.
dpkg --list | egrep -i --color 'linux-image|linux-headers|linux-modules' | awk '{ print $2 }'

// Results from the previous command:
linux-headers-6.8.0-1015-azure
linux-image-6.8.0-1015-azure
linux-modules-6.8.0-1015-azure

// Open the grub settings and modify the GRUB_DEFAULT="0" to GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 6.8.0-1015-azure".
$ sudo vim /etc/default/grub 
 
// The grub file will look like the following:
GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 6.8.0-1015-azure"
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
///////////////////

// Update GRUB and reboot.
$ sudo update-grub && sudo update-grub2
$ sudo reboot

// Reinstall the driver after reboot.
  1. NvidiaGpuDriverLinux installerar för närvarande de senaste 17.5 GRID-drivrutinerna, som har problem med CUDA i A10-serien. NVIDIA arbetar med att lösa det här problemet; använd under tiden GRID-drivrutinen 16.5 genom att föra in en körningsinställning till tillägget.
az vm extension set  --resource-group <rg-name> --vm-name <vm-name>  --name NvidiaGpuDriverLinux --publisher Microsoft.HpcCompute --settings "{'driverVersion':'535.161'}"
{
  "name": "NvidiaGpuDriverLinux",
  "type": "extensions",
  "apiVersion": "2015-06-15",
  "location": "<location>",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
  ],
  "properties": {
    "publisher": "Microsoft.HpcCompute",
    "type": "NvidiaGpuDriverLinux",
    "typeHandlerVersion": "1.11",
    "autoUpgradeMinorVersion": true,
    "settings": {
         "driverVersion": "535.161"
    }
  }
}
  1. GRID Driver-versionen 17.x är inkompatibel på NVv3 (NVIDIA Tesla M60). GRID-drivrutiner upp till version 16.5 stöds. NvidiaGpuDriverLinux installerar de senaste drivrutinerna som är inkompatibla på NVv3 SKU. Använd i stället följande körningsinställningar för att tvinga tillägget att installera en äldre version av drivrutinen. Mer information om drivrutinsversioner finns i NVIDIA GPU-resurser.
az vm extension set  --resource-group <rg-name> --vm-name <vm-name>  --name NvidiaGpuDriverLinux --publisher Microsoft.HpcCompute --settings "{'driverVersion':'535.161'}"
{
  "name": "NvidiaGpuDriverLinux",
  "type": "extensions",
  "apiVersion": "2015-06-15",
  "location": "<location>",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
  ],
  "properties": {
    "publisher": "Microsoft.HpcCompute",
    "type": "NvidiaGpuDriverLinux",
    "typeHandlerVersion": "1.11",
    "autoUpgradeMinorVersion": true,
    "settings": {
         "driverVersion": "535.161"
    }
  }
}
  1. Grid 17.5 Linux-drivrutinen har en bugg där den påverkar CUDA-relaterade arbetsbelastningar. Felsignatur omfattar vanligtvis CUDA-enheter som inte är tillgängliga. Medan Azure arbetar med att lösa det här problemet använder du GRID-drivrutinen 16.5 för att fortsätta köra arbetsbelastningen.

Stöd

Om du behöver mer hjälp när som helst i den här artikeln kontaktar du Azure-experterna på MSDN Azure- och Stack Overflow-forumen. Du kan också skapa en Azure Support incident. Gå till Azure-support och välj Hämta support. Information om hur du använder Azure-support finns i Vanliga frågor och svar om Azure-support.

Nästa steg