Teilen über


GPU-Beschleunigung für Azure IoT Edge für Linux unter Windows

Gilt für: yes icon IoT Edge 1.1

Wichtig

IoT Edge 1.1: Datum für das Supportende war der 13. Dezember 2022. Informationen zur Unterstützung für dieses Produkt, diesen Dienst, diese Technologie oder diese API finden Sie in der Microsoft Lifecycle-Richtlinie. Weitere Informationen zum Aktualisieren auf die neueste Version von IoT Edge finden Sie unter Update IoT Edge.

GPUs sind eine beliebte Wahl für Berechnungen im Rahmen der künstlichen Intelligenz, da sie über parallele Verarbeitungsfunktionen verfügen und die Ausführung von auf maschinellem Sehen basierenden Rückschlussvorgängen häufig schneller als mit CPUs ist. Zur besseren Unterstützung von KI- und Machine Learning-Anwendungen kann mit Azure IoT Edge für Linux unter Windows (EFLOW) eine GPU für das Linux-Modul des virtuellen Computers verfügbar gemacht werden.

Azure IoT Edge für Linux unter Windows unterstützt mehrere GPU-Passthrough-Technologien, z. B.:

  • Direkte Gerätezuweisung (Direct Device Assignment, DDA): GPU-Kerne werden entweder dem virtuellen Linux-Computer oder dem Host zugeordnet.

  • GPU-Paravirtualisierung (GPU-PV): Die GPU wird vom virtuellen Linux-Computer und vom Host gemeinsam genutzt.

Sie müssen während der Bereitstellung die entsprechende Passthrough-Methode auswählen, damit sie den unterstützten Funktionen der GPU-Hardware Ihres Geräts entspricht.

Wichtig

Diese Features können Komponenten enthalten, die von der NVIDIA Corporation oder ihren Lizenzgebern entwickelt wurden bzw. sich in deren Besitz befinden. Die Verwendung der Komponenten unterliegt den Lizenzbedingungen von NVIDIA, die auf der NVIDIA-Website angegeben sind.

Indem Sie die Features für die GPU-Beschleunigung verwenden, akzeptieren Sie die Lizenzbedingungen von NVIDIA und stimmen ihnen zu.

Voraussetzungen

Für die Features für die GPU-Beschleunigung von Azure IoT Edge für Linux unter Windows wird derzeit nur speziell ausgewählte GPU-Hardware unterstützt. Außerdem kann die Nutzung dieses Features bestimmte Windows-Versionen erfordern.

Hier sind die unterstützten GPUs und die erforderlichen Windows-Versionen angegeben:

Unterstützte GPUs GPU-Passthrough-Typ Unterstützte Windows-Versionen
NVIDIA T4, A2 DDA Windows Server 2019
Windows Server 2022
Windows 10/11 (Pro, Enterprise, IoT Enterprise)
NVIDIA GeForce, Quadro, RTX GPU-PV Windows 10/11 (Pro, Enterprise, IoT Enterprise)
Intel iGPU GPU-PV Windows 10/11 (Pro, Enterprise, IoT Enterprise)

Wichtig

GPU-PV-Unterstützung kann auf bestimmte Generationen von Prozessoren oder GPU-Architekturen beschränkt sein, die vom GPU-Anbieter bestimmt werden. Weitere Informationen finden Sie in der Dokumentation zum iGPU-Treiber von Intel oder in der Dokumentation zu CUDA für WSL von NVIDIA.

Windows Server 2019-Benutzer müssen mindestens Build 17763 mit Installation aller aktuellen kumulativen Updates verwenden.

Windows 10-Benutzer müssen mindestens Build 19044.1620 aus dem Update vom November 2021 verwenden. Nach der Installation können Sie Ihre Buildversion überprüfen, indem Sie winver an der Eingabeaufforderung ausführen.

GPU-Passthrough wird nicht mit geschachtelter Virtualisierung unterstützt, z. B. Ausführen von EFLOW auf einem virtuellen Windows-Computer.

Systemsetup und -installation

Die folgenden Abschnitte enthalten Setup- und Installationsinformationen für verschiedene GPUs.

NVIDIA T4-/A2-GPUs

Für T4-/A2GPUs empfiehlt Microsoft die Installation eines Treibers für die Risikominderung des Geräts, den Sie beim Anbieter Ihrer GPU erhalten. Die Installation eines Treibers für die Risikominderung des Geräts ist zwar optional, aber Sie können damit ggf. die Sicherheit Ihrer Bereitstellung erhöhen. Weitere Informationen finden Sie unter Bereitstellen von Grafikgeräten mit Discrete Device Assignment.

Warnung

Das Aktivieren von Hardwaregeräte-Passthrough kann zu einem erhöhten Sicherheitsrisiko führen. Microsoft empfiehlt zur Risikominderung die Installation eines Gerätetreibers, den Sie vom Anbieter Ihrer GPU erhalten. Weitere Informationen finden Sie unter Bereitstellen von Grafikgeräten mit Discrete Device Assignment.

NVIDIA GeForce-/Quadro-/RTX-GPUs

Laden Sie für NVIDIA GeForce-/Quadro-/RTX-GPUs den NVIDIA CUDA-fähigen Treiber für das Windows-Subsystem für Linux (WSL) herunter, und installieren Sie ihn, um ihn für Ihre vorhandenen CUDA-ML-Workflows zu nutzen. Die „CUDA for WSL“-Treiber wurden ursprünglich für WSL entwickelt, aber sie werden auch für Azure IoT Edge für Linux unter Windows eingesetzt.

Außerdem müssen Windows 10-Benutzer WSL installieren, weil einige der Bibliotheken zwischen WSL und Azure IoT Edge für Linux unter Windows gemeinsam genutzt werden.

Intel iGPUs

Laden Sie für Intel iGPUs den Intel-Grafiktreiber mit WSL-GPU-Unterstützung herunter, und installieren Sie ihn.

Außerdem müssen Windows 10-Benutzer WSL installieren, weil einige der Bibliotheken zwischen WSL und Azure IoT Edge für Linux unter Windows gemeinsam genutzt werden.

Aktivieren der GPU-Beschleunigung in Ihrer Azure IoT Edge-Bereitstellung für Linux unter Windows

Sobald die Systemeinrichtung abgeschlossen ist, können Sie Ihre Bereitstellung von Azure IoT Edge für Linux unter Windows erstellen. Bei diesem Prozess müssen Sie die GPU im Rahmen der EFLOW-Bereitstellung aktivieren.

Der folgende Befehl erstellt beispielsweise einen virtuellen Computer mit einer zugewiesenen NVIDIA A2-GPU.

Deploy-Eflow -gpuPassthroughType "DirectDeviceAssignment" -gpuCount 1 -gpuName "NVIDIA A2"

Nach Abschluss der Installation sind Sie bereit, die Linux-Module mit GPU-Beschleunigung über Azure IoT Edge für Linux unter Windows bereitzustellen und auszuführen.

Nächste Schritte