Nachdem Sie eine VM-Instanz mit einer oder mehreren GPUs erstellt haben, benötigt Ihr System NVIDIA-Gerätetreiber, damit Ihre Anwendungen auf das Gerät zugreifen können. Achten Sie darauf, dass Ihre VM-Instanzen genügend freien Speicherplatz haben. Sie sollten beim Erstellen der neuen VM mindestens 40 GB für das Bootlaufwerk wählen.
Um die Treiber zu installieren, haben Sie zwei Möglichkeiten:
Wenn Sie GPUs für hardwarebeschleunigte 3D-Grafiken wie Remote Desktop oder Gaming benötigen, finden Sie weitere Informationen unter Treiber für virtuelle NVIDIA RTX-Workstations (vWS) installieren.
Für andere Arbeitslasten sollten Sie der Anleitung in diesem Dokument folgen, um den NVIDIA-Treiber zu installieren.
NVIDIA-Treiber, CUDA-Toolkit und CUDA-Laufzeitversionen
Es gibt verschiedene versionierte Komponenten von Treibern und Laufzeitumgebung, die in Ihrer Umgebung erforderlich sein können. Dazu gehören die folgenden Komponenten:
- NVIDIA-Treiber
- CUDA-Toolkit
- CUDA-Laufzeit
Bei der Installation dieser Komponenten haben Sie die Möglichkeit, Ihre Umgebung entsprechend Ihren Anforderungen zu konfigurieren. Wenn Sie beispielsweise eine frühere Version von Tensorflow haben, die mit einer früheren Version des CUDA-Toolkits am besten funktioniert, aber die verwendete GPU eine spätere Version des NVIDIA-Treibers erfordert, dann Sie können eine frühere Version eines CUDA-Toolkits zusammen mit einer späteren Version des NVIDIA-Treibers installieren.
Die NVIDIA-Treiber- und CUDA-Toolkitversionen müssen jedoch kompatibel sein. Informationen zum CUDA-Toolkit und zur NVIDIA-Treiberkompatibilität finden Sie in der NVIDIA-Dokumentation zur CUDA-Kompatibilität.
Erforderliche NVIDIA-Treiberversionen
Für NVIDIA-GPUs, die auf Compute Engine ausgeführt werden, werden die folgenden NVIDIA-Treiberversionen empfohlen:
GPU-Modell | Linux | Windows |
---|---|---|
NVIDIA H100 | 535.86.10 oder höher | – |
NVIDIA L4 | 535.86.10 oder höher | 536.67 |
NVIDIA A100, T4, P4, P100 und V100 | 535.54.03 oder höher | 536.25 oder höher |
NVIDIA K80 (Ende der Unterstützung) | Neueste R470-Version | Neueste R470-Version |
Für K80-GPUs hat NVIDIA angekündigt, dass der R470-Treiberzweig die letzte Treiberversion ist, um Debugging-Support zu erhalten. Informationen zu dieser Aktualisierung finden Sie in der NVIDIA Software Support Matrix.
GPU-Treiber auf VMs installieren
Eine Möglichkeit zur Installation des NVIDIA-Treibers auf den meisten VMs ist die Installation des NVIDIA CUDA-Toolkits.
Führen Sie die folgenden Schritte aus, um das NVIDIA-Toolkit zu installieren:
Wählen Sie ein CUDA-Toolkit mit dem für den erforderlichen Mindesttreiber aus.
Stellen Sie eine Verbindung zur VM her, auf der Sie den Treiber installieren möchten.
Laden Sie das CUDA-Toolkit auf Ihre VM herunter und installieren Sie es. Das Installationspaket und die Anleitung für ein empfohlenes Toolkit finden Sie in der folgenden Tabelle. Bevor Sie das Toolkit installieren, müssen Sie die in der Installationsanleitung beschriebenen Installationsschritte ausführen.
GPU-Modell Mindestens empfohlene CUDA-Toolkit-Version Installationsanleitung für die Mindestversion - NVIDIA H100
- Linux: CUDA Toolkit 12.2 Update 1
- Windows: –
- Linux: Installationshandbuch für CUDA 12.2
- Windows: –
- NVIDIA L4
- Linux: CUDA Toolkit 12.2 Update 1
- Windows: CUDA Toolkit 12.2 Update 2
- NVIDIA A100
- NVIDIA T4
- NVIDIA V100
- NVIDIA P100
- NVIDIA P4
- Linux: CUDA Toolkit 12.2
- Windows: CUDA Toolkit 12.2
GPU-Treiber mithilfe eines Installationsskripts installieren
Mit den folgenden Skripts können Sie den Installationsvorgang automatisieren. Informationen zu diesen Skripts finden Sie im GitHub-Repository.
Beschränkungen
- Dieses Script funktioniert nicht auf Linux-VMs, für die Sicherer Start aktiviert ist. Informationen zu Linux-VMs mit aktiviertem Secure Boot finden Sie unter GPU-Treiber installieren (Secure Boot-VMs).
Wenn Sie den Ops-Agent haben, der GPU-Messwerte auf Ihrer VM erfasst, Version 2.38.0 oder höher, müssen Sie den Agent beenden, bevor Sie Ihre GPU-Treiber mit diesem Installationsscript installieren oder aktualisieren können.
Nachdem Sie die Installation oder das Upgrade des GPU-Treibers abgeschlossen haben, müssen Sie die VM neu starten.
Führen Sie den folgenden Befehl aus, um den Ops-Agent zu beenden:
sudo systemctl stop google-cloud-ops-agent
Linux
Unterstützte Betriebssysteme
Das Linux-Installationsskript wurde unter den folgenden Betriebssystemen getestet:
- CentOS 7 and 8
- Debian 10 and 11
- Red Hat Enterprise Linux (RHEL) 7, 8 und 9
- Rocky Linux 8 und 9
- Ubuntu 20 und 22
Wenn Sie dieses Script auf anderen Betriebssystemen verwenden, schlägt die Installation fehl. Bei Linux-VMs installiert dieses Script nur den NVIDIA-Treiber.
Prüfen Sie, ob Python 3 unter Ihrem Betriebssystem installiert ist.
Laden Sie das Installationsskript herunter.
curl https://raw.githubusercontent.com/GoogleCloudPlatform/compute-gpu-installation/main/linux/install_gpu_driver.py --output install_gpu_driver.py
Führen Sie das Installationsskript aus.
sudo python3 install_gpu_driver.py
Die Ausführung des Skripts dauert einige Zeit. Möglicherweise wird Ihre VM neu gestartet. Wenn die VM neu gestartet wird, führen Sie das Skript noch einmal aus, um die Installation fortzusetzen.
Prüfen Sie die Installation. Weitere Informationen finden Sie unter Installieren des GPU-Treibers prüfen.
Windows
Dieses Installationsskript kann auf VMs verwendet werden, für die Secure Boot aktiviert ist.
- Bei Windows-VMs, die eine G2-Maschinenserie verwenden, installiert dieses Script nur den NVIDIA-Treiber.
- Bei anderen Maschinentypen installiert das Script den NVIDIA-Treiber und das CUDA-Toolkit.
Öffnen Sie ein PowerShell-Terminal als Administrator und führen Sie dann die folgenden Schritte aus:
Wenn Sie Windows Server 2016 verwenden, legen Sie die TLS-Version (Transport Layer Security) auf 1.2 fest.
[Net.ServicePointManager]::SecurityProtocol = 'Tls12'
Laden Sie das Skript herunter.
Invoke-WebRequest https://github.com/GoogleCloudPlatform/compute-gpu-installation/raw/main/windows/install_gpu_driver.ps1 -OutFile C:\install_gpu_driver.ps1
Führen Sie das Skript aus.
C:\install_gpu_driver.ps1
Die Ausführung des Skripts dauert einige Zeit. Während der Installation werden keine Eingabeaufforderungen angezeigt. Sobald das Skript beendet ist, wird der Treiber installiert.
Mit diesem Script werden die Treiber am Standardspeicherort auf Ihrer VM installiert:
C:\Program Files\NVIDIA Corporation\
.Prüfen Sie die Installation. Weitere Informationen finden Sie unter Installieren des GPU-Treibers prüfen.
GPU-Treiber installieren (Secure Boot-VMs)
Diese Anleitung bezieht sich auf die Installation von GPU-Treibern auf Linux-VMs, die Secure Boot verwenden.
Wenn Sie eine Windows-VM oder eine Linux-VM verwenden, die kein Secure Boot verwendet, lesen Sie stattdessen eine der folgenden Anleitungen:
Die Installation des Treibers auf einer Secure Boot-VM ist für Linux-VMs unterschiedlich, da bei diesen VMs alle Kernel-Module mit dem vom System als vertrauenswürdig eingestuften Schlüssel signiert werden müssen.
Diese Anleitung ist nur für Secure Boot-Linux-VMs verfügbar, die unter den Betriebssystemen Ubuntu 18.04, 20.04 und 22.04 ausgeführt werden. In Zukunft werden weitere Linux-Betriebssysteme unterstützt.
Führen Sie die folgenden Schritte aus, um GPU-Treiber auf Ihren Ubuntu-VMs zu installieren, die Secure Boot verwenden:
Stellen Sie eine Verbindung zur VM her, auf der Sie den Treiber installieren möchten.
Aktualisieren Sie das Repository.
sudo apt-get update
Suchen Sie nach dem neuesten Paket des NVIDIA-Kernels oder der gewünschten Version. Dieses Paket enthält NVIDIA-Kernel-Module, die vom Ubuntu-Schlüssel signiert wurden. Wenn Sie eine frühere Version suchen, ändern Sie die Zahl für den Parameter „tail”, um eine ältere Version zu erhalten. Geben Sie beispielsweise
tail -n 2
an:Ubuntu PRO und LTS
Führen Sie für Ubuntu PRO und LTS den folgenden Befehl aus:
NVIDIA_DRIVER_VERSION=$(sudo apt-cache search 'linux-modules-nvidia-[0-9]+-gcp$' | awk '{print $1}' | sort | tail -n 1 | head -n 1 | awk -F"-" '{print $4}')
Ubuntu PRO FIPS
Führen Sie für Ubuntu PRO FIPS die folgenden Befehle aus:
Ubuntu FIPS-Updates aktivieren
sudo ua enable fips-updates
Herunterfahren und neu starten
sudo shutdown -r now
Holen Sie sich das neueste Paket.
NVIDIA_DRIVER_VERSION=$(sudo apt-cache search 'linux-modules-nvidia-[0-9]+-gcp-fips$' | awk '{print $1}' | sort | tail -n 1 | head -n 1 | awk -F"-" '{print $4}')
Sie können die ausgewählte Treiberversion mit dem Befehl
echo $NVIDIA_DRIVER_VERSION
prüfen. Die Ausgabe ist ein Versionsstring wie455
.Installieren Sie das Kernel-Modulpaket und den entsprechenden NVIDIA-Treiber.
sudo apt install linux-modules-nvidia-${NVIDIA_DRIVER_VERSION}-gcp nvidia-driver-${NVIDIA_DRIVER_VERSION}
Wenn der Befehl mit
package not found error
fehlgeschlagen ist, fehlt möglicherweise der neueste NVIDIA-Treiber im Repository. Wiederholen Sie den vorherigen Schritt und wählen Sie eine frühere Treiberversion aus, indem Sie die tail-Zahl ändern.Überprüfen Sie, ob der NVIDIA-Treiber installiert ist. Möglicherweise müssen Sie die VM neu starten.
Wenn Sie das System neu gestartet haben, um die NVIDIA-Version zu prüfen. Nach dem Neustart müssen Sie die Variable
NVIDIA_DRIVER_VERSION
zurücksetzen. Führen Sie dazu den Befehl, den Sie in Schritt 3 verwendet haben, noch einmal aus.Konfigurieren Sie APT für die Verwendung des NVIDIA-Paket-Repositories.
Damit APT bei der Auswahl der richtigen Abhängigkeit hilft, können Sie die Repositories so anpinnen:
sudo tee /etc/apt/preferences.d/cuda-repository-pin-600 > /dev/null <<EOL Package: nsight-compute Pin: origin *ubuntu.com* Pin-Priority: -1
Package: nsight-systems Pin: origin *ubuntu.com* Pin-Priority: -1
Package: nvidia-modprobe Pin: release l=NVIDIA CUDA Pin-Priority: 600
Package: nvidia-settings Pin: release l=NVIDIA CUDA Pin-Priority: 600
Package: * Pin: release l=NVIDIA CUDA Pin-Priority: 100 EOLInstallieren Sie
software-properties-common
. Dies ist erforderlich, wenn Sie minimale Ubuntu-Images verwenden.sudo apt install software-properties-common
Legen Sie die Ubuntu-Version fest.
Ubuntu 18.04
Führen Sie für Ubuntu 18.04 den folgenden Befehl aus:
export UBUNTU_VERSION=ubuntu1804/x86_64
Ubuntu 20.04
Führen Sie für Ubuntu 20.04 den folgenden Befehl aus:
export UBUNTU_VERSION=ubuntu2004/x86_64
Ubuntu 22.04
Führen Sie für Ubuntu 22.04 den folgenden Befehl aus:
export UBUNTU_VERSION=ubuntu2204/x86_64
Laden Sie das Paket
cuda-keyring
herunter:wget https://developer.download.nvidia.com/compute/cuda/repos/$UBUNTU_VERSION/cuda-keyring_1.0-1_all.deb
Installieren Sie das Paket
cuda-keyring
:sudo dpkg -i cuda-keyring_1.0-1_all.deb
Fügen Sie das NVIDIA-Repository hinzu.
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/$UBUNTU_VERSION/ /"
Wenn Sie dazu aufgefordert werden, wählen Sie die Standardaktion zur Beibehaltung der aktuellen Version aus.
Suchen Sie nach der kompatiblen CUDA-Treiberversion.
Das folgende Skript bestimmt die neueste CUDA-Treiberversion, die mit dem soeben installierten NVIDIA-Treiber kompatibel ist:
CUDA_DRIVER_VERSION=$(apt-cache madison cuda-drivers | awk '{print $3}' | sort -r | while read line; do if dpkg --compare-versions $(dpkg-query -f='${Version}\n' -W nvidia-driver-${NVIDIA_DRIVER_VERSION}) ge $line ; then echo "$line" break fi done)
Sie können die CUDA-Treiberversion mit dem Befehl
echo $CUDA_DRIVER_VERSION
prüfen. Die Ausgabe ist ein Versionsstring wie455.32.00-1
.Installieren Sie CUDA-Treiber mit der im vorherigen Schritt identifizierten Version.
sudo apt install cuda-drivers-${NVIDIA_DRIVER_VERSION}=${CUDA_DRIVER_VERSION} cuda-drivers=${CUDA_DRIVER_VERSION}
Optional: Setzen Sie
dkms
-Pakete auf „Hold”.Nachdem Sie Secure Boot aktiviert haben, müssen alle Kernel-Module signiert werden, damit sie geladen werden können. Von
dkms
erstellte Kernel-Module funktionieren auf der VM nicht, da sie standardmäßig nicht ordnungsgemäß signiert sind. Dies ist ein optionaler Schritt. Er kann jedoch verhindern, dass Sie versehentlich anderedkms
-Pakete installieren.Führen Sie den folgenden Befehl aus, um
dkms
-Pakete auf „Hold” zu setzen.sudo apt-get remove dkms && sudo apt-mark hold dkms
Installieren Sie das CUDA-Toolkit und die Laufzeit.
Wählen Sie die entsprechende CUDA-Version aus. Das folgende Skript bestimmt die neueste CUDA-Version, die mit dem soeben installierten CUDA-Treiber kompatibel ist:
CUDA_VERSION=$(apt-cache showpkg cuda-drivers | grep -o 'cuda-runtime-[0-9][0-9]-[0-9],cuda-drivers [0-9\\.]*' | while read line; do if dpkg --compare-versions ${CUDA_DRIVER_VERSION} ge $(echo $line | grep -Eo '[[:digit:]]+\.[[:digit:]]+') ; then echo $(echo $line | grep -Eo '[[:digit:]]+-[[:digit:]]') break fi done)
Sie können die CUDA-Version prüfen, indem Sie
echo $CUDA_VERSION
ausführen. Die Ausgabe ist ein Versionsstring wie11-1
.Installieren Sie das CUDA-Paket.
sudo apt install cuda-${CUDA_VERSION}
Prüfen Sie die CUDA-Installation.
sudo nvidia-smi
/usr/local/cuda/bin/nvcc --version
Der erste Befehl gibt die GPU-Informationen aus. Der zweite Befehl gibt die installierte CUDA-Compiler-Version aus.
Installation des GPU-Treibers prüfen
Prüfen Sie nach Abschluss der Treiberinstallationsschritte, ob der Treiber ordnungsgemäß installiert und initialisiert wurde.
Linux
Stellen Sie eine Verbindung zur Linux-Instanz her und prüfen Sie mit dem Befehl nvidia-smi
, ob der Treiber korrekt ausgeführt wird.
sudo nvidia-smi
Die Ausgabe sieht in etwa so aus:
Tue Mar 21 19:50:15 2023 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 530.30.02 Driver Version: 530.30.02 CUDA Version: 12.1 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 NVIDIA L4 Off | 00000000:00:03.0 Off | 0 | | N/A 63C P0 30W / 75W | 0MiB / 23034MiB | 8% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+
Wenn dieser Befehl fehlschlägt, prüfen Sie Folgendes:
Prüfen Sie, ob der VM GPUs zugeordnet ist.
Suchen Sie mit dem folgenden Befehl nach allen NVIDIA PCI-Geräten:
sudo lspci | grep -i "nvidia"
.Prüfen Sie, ob die Treiber-Kernel-Version und die VM-Kernel-Version identisch sind.
- Führen Sie
uname -r
aus, um die VM-Kernel-Version zu überprüfen. - Führen Sie
sudo apt-cache show linux-modules-nvidia-NVIDIA_DRIVER_VERSION-gcp
aus, um die Kernel-Version des Treibers zu prüfen.
Wenn die Versionen nicht übereinstimmen, starten Sie die VM auf der neuen Kernel-Version neu.
- Führen Sie
Windows Server
Stellen Sie eine Verbindung zur Windows Server-Instanz her. Öffnen Sie ein PowerShell-Terminal und führen Sie den folgenden Befehl aus, um zu prüfen, ob der Treiber ordnungsgemäß ausgeführt wird.
nvidia-smi
Die Ausgabe sieht in etwa so aus:
+---------------------------------------------------------------------------------------+ | NVIDIA-SMI 537.13 Driver Version: 537.13 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 NVIDIA L4 WDDM | 00000000:00:03.0 Off | 0 | | N/A 66C P8 17W / 72W | 128MiB / 23034MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | 0 N/A N/A 4888 C+G ...CBS_cw5n1h2txyewy\TextInputHost.exe N/A | | 0 N/A N/A 5180 C+G ....Search_cw5n1h2txyewy\SearchApp.exe N/A | +---------------------------------------------------------------------------------------+
Nächste Schritte
- Informationen zum Beobachten der GPU-Leistung finden Sie unter GPU-Leistung beobachten.
- Informationen zur Handhabung der GPU-Hostwartung finden Sie unter GPU-Hostwartungen.
- Informationen zum Verbessern der Netzwerkleistung finden Sie unter Höhere Netzwerkbandbreite verwenden.
- Informationen zur Fehlerbehebung bei GPU-VMs finden Sie unter Fehlerbehebung bei GPU-VMs.