Ubuntu Server: Een GPU configureren met behulp van Discrete Device Assignment (DDA) op een Ubuntu virtuele machine
Summary: In dit artikel wordt gedemonstreerd hoe u een GPU configureert met behulp van Discrete Device Assignment (DDA) op een Ubuntu Server versie 1804 virtuele machine (VM) die wordt uitgevoerd in Hyper-V. ...
Instructions
Doelstelling
DDA kan worden gebruikt om een volledig PCIe-apparaat, in dit geval een GPU, door te geven aan een VM. Dit biedt krachtige toegang tot het apparaat en de mogelijkheid om gebruik te maken van de eigen drivers.
Omgeving in dit voorbeeld
Server: PowerEdge R740xd met Windows Server 2019
GPU: NVIDIA Tesla P100
VM: 4 x vCPU's, 32 GB RAM met Ubuntu ®18.04 LTS
Stappen
-
Installeer Windows Server 2019 op de host en werk het besturingssysteem bij. Installeer de nieuwste apparaatdrivers, zoals chipset- en GPU-drivers.
-
Installeer de Hyper-V-rol.
-
Maak een VM van de 2e generatie. Schakel Secure Boot uit in de instellingen van de VM en installeer vervolgens Ubuntu ®18.04 LTS erop.
-
Ubuntu-updates toepassen. Voer hiervoor de volgende opdrachten uit:
$ sudo apt-get update
$ sudo apt-get upgrade
-
Sluit de VM af.
-
Open Apparaatbeheer op de host, vouw Beeldschermadapters uit en selecteer de GPU die aan de VM wordt gepresenteerd.

Figuur 1: Apparaatbeheer met de GPU geselecteerd -
Klik met de rechtermuisknop op de GPU die moet worden gebruikt in de VM en selecteer Eigenschappen. Selecteer op het tabblad Details de optie Property in de vervolgkeuzelijst Locatiepaden. Kopieer de waarde die begint met PCIROOT naar Kladblok.

Figuur 2: Apparaateigenschappen apparaatbeheer - Locatiepaden -
Klik met de rechtermuisknop op de GPU in Apparaatbeheer en schakel deze uit.

Figuur 3: De GPU uitschakelen in Apparaatbeheer -
Configureer de VM voor DDA met PowerShell. Open PowerShell als beheerder en voer de volgende opdrachten uit:
# Configure the "Automatic Stop Action" of a VM to TurnOff. Set-VM -Name VMName -AutomaticStopAction TurnOff # Enable Write-Combining on the CPU. Set-VM -VMName VMName -GuestControlledCacheTypes $true # Configure the 32-bit MMIO space. Set-VM -VMName VMName -LowMemoryMappedIoSpace 128Mb # Configure greater than 32-bit MMIO space. Set-VM -VMName VMame -HighMemoryMappedIoSpace 18000Mb # Dismount the device. Dismount-VMHostAssignableDevice -force -LocationPath "step 7 location path goes here" # Assign the device to the VM. Add-VMAssignableDevice -VMName VMName -LocationPath "step 7 location path goes here" -
Start de VM.
-
Voer de volgende opdrachten uit binnen de VM om te controleren of deze de GPU heeft geïdentificeerd:
$ lspci
$ sudo lshw -C Display

Afbeelding 4: Uitvoer van delspcialslshwOpdrachten -
Als de uitvoer van de
sudo lshw -C Displaycommando in stap 11 geeft aan dat de Nouveau-driver is geïnstalleerd (zie Configuratie in afbeelding 4 hierboven), deze moet worden uitgeschakeld. Nouveau is een gratis en open-source driver voor NVIDIA-videokaarten, geschreven door onafhankelijke software-engineers. Deze driver is standaard geïnstalleerd en moet worden uitgeschakeld om de NVIDIA-driver te kunnen installeren. Voer de volgende opdrachten uit om de Nouveau-driver uit te schakelen.# Create a file at /etc/modprobe.d/blacklist-nouveau.conf. $ sudo nano /etc/modprobe.d/blacklist-nouveau.conf # Add the following to the newly created file, then save the file. blacklist nouveau options nouveau modeset=0 # Regenerate the kernel initramfs, then reboot. $ sudo update-initramfs -u $ reboot
Afbeelding 5: Uitvoer van delspcialslshwcommando's nadat de Nouveau-driver is uitgeschakeld -
Download de NVIDIA-driver
en installeer deze op de Ubuntu VM.
# Run these commands after the file has been copied to the VM. $ sudo dpkg -i nvidia-driver-local-repo-ubuntu1804-440.33.01_1.0-1_amd64.deb $ sudo apt-key add /var/nvidia-driver-local-repo-440.33.01/7fa2af80.pub $ sudo apt-get update $ sudo apt-get install cuda-drivers {Install all the dependencies $ sudo reboot -
Voer de volgende opdrachten uit om te controleren of de driver correct is geïnstalleerd:
$ lspci $ sudo lshw -C Display $ nvidia-smi

Afbeelding 6: Uitvoer van delspci,lshwennvidia-smiopdrachten nadat de NVIDIA-driver is geïnstalleerd
Additional Information
GPU vervangen voor PowerEdge R760
Duur: 00:03:10 (uu:mm:ss)
Indien beschikbaar kunnen de taalinstellingen voor ondertiteling (ondertiteling) worden gekozen met behulp van het CC-pictogram in deze videospeler.