Konfigurieren der Beschleunigung durch Graphics Processing Units (GPUs) für Azure Virtual Desktop

Wichtig

Dieser Inhalt gilt für Azure Virtual Desktop mit Azure Resource Manager-Objekten. Wenn Sie Azure Virtual Desktop (klassisch) ohne Azure Resource Manager-Objekte verwenden, finden Sie weitere Informationen in diesem Artikel.

Azure Virtual Desktop unterstützt die GPU-Beschleunigung (Graphics Processing Unit) beim Rendering und bei der Kodierung für eine verbesserte App-Leistung und Skalierbarkeit. Die GPU-Beschleunigung ist für grafikintensive Apps von entscheidender Bedeutung und kann mit allen unterstützten Betriebssystemen für Azure Virtual Desktop verwendet werden.

Die Liste enthält nicht ausdrücklich Mehrsitzungsversionen von Windows. Jede GPU in virtuellen Azure-Computern (VMs) der NV-Serie verfügt jedoch über eine GRID-Lizenz, die 25 gleichzeitige Benutzer unterstützt. Weitere Informationen finden Sie unter NV-Serie.

Dieser Artikel zeigt Ihnen, wie Sie eine GPU-optimierte virtuelle Azure-Maschine erstellen, sie zu Ihrem Host-Pool hinzufügen und sie so konfigurieren, dass sie GPU-Beschleunigung für Rendering und Codierung verwendet.

Voraussetzungen

In diesem Artikel wird davon ausgegangen, dass Sie bereits einen Hostpool und eine Anwendungsgruppe erstellt haben.

Wählen Sie eine geeignete GPU-optimierte Azure-VM-Größe aus.

Wählen Sie eine der VM-Größen von Azure der NV-Serie, NVv3-Serie, NVv4-Serie, NVadsA10_v5-Serie oder NCasT4_v3-Serie als Sitzungshost aus. Diese Größen sind auf Die App- und Desktopvirtualisierung zugeschnitten. Sie ermöglichen den meisten Anwendungen und der Windows-Benutzeroberfläche eine GPU-Beschleunigung.

Die richtige Wahl für Ihren Host-Pool hängt von vielen Faktoren ab, darunter Ihre speziellen Anwendungs-Workloads, die gewünschte Qualität der Benutzererfahrung und die Kosten. Grundsätzlich bieten größere und leistungsfähigere GPUs eine bessere Benutzerfreundlichkeit bei einer bestimmten Benutzerdichte. Kleinere und Bruchteile von GPU-Größen ermöglichen eine präzisere Kontrolle über Kosten und Qualität.

Hinweis

Es ist geplant, VMs der NV-Serie außer Betrieb zu setzen. Weitere Informationen finden Sie unter NV außer Kraft setzen.

Azure NC-, NCv2-, NCv3-, ND- und NDv2-Serien-VMs sind im Allgemeinen nicht für Azure Virtual Desktop-Sitzungshosts geeignet. Diese VMs sind auf spezialisierte, hochleistungsfähige Compute- oder Machine Learning-Tools ausgerichtet, wie die mit NVIDIA CUDA erstellten. Sie unterstützen keine GPU-Beschleunigung für die meisten Anwendungen oder die Windows-Benutzeroberfläche.

Installieren unterstützter Grafiktreiber auf Ihrer VM

Nach der Bereitstellung müssen Sie die entsprechenden Grafiktreiber installieren, um die GPU-Funktionen von Azure-VMs der N-Serie in Azure Virtual Desktop nutzen zu können. Folgen Sie den Anweisungen unter Unterstützte Betriebssysteme und Treiber, um Treiber zu installieren. Nur von Azure verteilte Treiber werden unterstützt.

Beachten Sie diese größenspezifischen Informationen:

  • Für VMs der Azure NV-Serie, NVv3-Serie oder NCasT4_v3-Serie unterstützen nur NVIDIA GRID-Treiber die GPU-Beschleunigung für die meisten Anwendungen und die Windows-Benutzeroberfläche. NVIDIA CUDA-Treiber unterstützen keine GPU-Beschleunigung für diese VM-Größen.

    Wenn Sie sich für die manuelle Installation von Treibern entscheiden, stellen Sie sicher, dass Sie GRID-Treiber installieren. Wenn Sie sich für die Installation von Treibern mithilfe der Azure VM-Erweiterung entscheiden, werden die GRID-Treiber automatisch für diese VM-Größen installiert.

  • Für VMs der Azure NVv4-Serie installieren Sie die AMD-Treiber, die Azure zur Verfügung stellt. Sie können sie mit Hilfe der Azure VM-Erweiterung automatisch installieren, oder Sie können sie manuell installieren.

Wenn die Treiber installiert wurden, muss die VM neu gestartet werden. Führen Sie die Überprüfungsschritte in den vorangegangenen Anweisungen aus, um zu bestätigen, dass die Grafiktreiber erfolgreich installiert wurden.

Konfigurieren des durch GPU beschleunigten App-Rendering

Standardmäßig werden Anwendungen und Desktops, die auf Windows Server laufen, mit der CPU gerendert und verwenden keine verfügbaren GPUs für das Rendering. Konfigurieren Sie eine Gruppenrichtlinie für den Sitzungshost, um durch GPU beschleunigtes Rendering zu aktivieren:

  1. Verbinden Sie sich mit dem Desktop der VM mit einem Konto, das über lokale Administratorrechte verfügt.
  2. Öffnen Sie das Startmenü und geben Sie gpedit.msc ein, um den Gruppenrichtlinien-Editor zu öffnen.
  3. Gehen Sie zu Computer Configuration>Administrative Templates>Windows Components>Remote Desktop Services>Remote Desktop Session Host>Remote Session Environment.
  4. Wählen Sie die Richtlinie Hardwaregrafikadapter verwenden für alle Remote-Desktopdienstsitzungen aus. Legen Sie diese Richtlinie auf Aktiviert fest, um das GPU-Rendering in der Remotesitzung zu aktivieren.

Konfigurieren der durch GPU beschleunigten Framecodierung

Remotedesktop codiert alle Grafiken, die Apps und Desktops für die Übertragung an Remotedesktopclients rendern. Wenn ein Teil des Bildschirms häufig aktualisiert wird, wird dieser mit einem Videocodec (H.264/AVC) codiert. Standardmäßig verwendet Remote Desktop für diese Kodierung keine verfügbaren GPUs.

Konfigurieren Sie eine Gruppenrichtlinie für den Sitzungshost, um durch GPU beschleunigte Framecodierung zu aktivieren. Im Folgenden Verfahren werden die vorherigen Schritte fortgesetzt.

Hinweis

Die durch GPU beschleunigte Framecodierung ist in VMs der Serie NVv4 nicht verfügbar.

  1. Wählen Sie die Richtlinie H.264/AVC-Hardwarecodierung für Remotedesktopverbindungen konfigurieren aus. Legen Sie diese Richtlinie auf Aktiviert fest, um die Hardwarecodierung für AVC/H.264 in der Remotesitzung zu aktivieren.

    Legen Sie in Windows Server 2016 die Option AVC-Hardwarecodierung bevorzugen auf Immer versuchen fest.

  2. Nachdem Sie die Richtlinien bearbeitet haben, erzwingen Sie eine Gruppenrichtlinienaktualisierung. Öffnen Sie die Eingabeaufforderung als Administrator, und führen Sie den folgenden Befehl aus:

    gpupdate.exe /force
    
  3. Melden Sie sich von der Remote-Desktopsitzung ab.

Konfigurieren Sie die Videokodierung im Vollbildmodus

Hinweis

Sie können die Videocodierung im Vollbildmodus auch ohne GPU aktivieren.

Wenn Sie häufig Anwendungen verwenden, die Inhalte mit hoher Framerate erzeugen, können Sie die Vollbildvideocodierung für eine Remotesitzung aktivieren. Solche Anwendungen können 3D-Modellierung, CAD/CAM oder Videoanwendungen umfassen.

Ein Vollbild-Videoprofil bietet eine höhere Bildrate und ein besseres Benutzererlebnis für diese Anwendungen, allerdings auf Kosten der Netzwerkbandbreite und der Ressourcen von Sitzungshost und Client. Wir empfehlen Ihnen, für eine bildschirmfüllende Videokodierung eine GPU-beschleunigte Bildkodierung zu verwenden.

Konfigurieren Sie die Gruppenrichtlinie für den Sitzungshost, um die Vollbild-Videokodierung zu aktivieren. Führen Sie die vorherigen Schritte aus:

  1. Wählen Sie die Richtlinie Priorisieren von H.264/AVC 444-Grafikmodus für Remotedesktopverbindungen aus. Legen Sie diese Richtlinie auf Aktiviert fest, um den H.264/AVC 444-Codec in der Remotesitzung zu erzwingen.

  2. Nachdem Sie die Richtlinien bearbeitet haben, erzwingen Sie eine Gruppenrichtlinienaktualisierung. Öffnen Sie die Eingabeaufforderung als Administrator, und führen Sie den folgenden Befehl aus:

    gpupdate.exe /force
    
  3. Melden Sie sich von der Remote-Desktopsitzung ab.

Überprüfen des durch GPU beschleunigten App-Renderings

Um zu überprüfen, ob Anwendungen den Grafikprozessor für das Rendering verwenden, probieren Sie eine der folgenden Methoden aus:

  • Verwenden Sie für Azure-VMs mit einer NVIDIA-GPU das nvidia-smi Hilfsprogramm, um bei der Ausführung Ihrer Apps nach der GPU-Auslastung zu suchen. Weitere Informationen finden Sie unter Überprüfen der Treiberinstallation.
  • Bei unterstützten Betriebssystemversionen können Sie den Task-Manager verwenden, um die GPU-Auslastung zu überprüfen. Wählen Sie auf der Registerkarte Leistung die GPU aus, um zu sehen, ob Anwendungen die GPU ausnutzen.

Überprüfen der durch GPU beschleunigten Framecodierung

So können Sie überprüfen, ob der Remotedesktop die durch GPU beschleunigte Codierung verwendet:

  1. Verbinden Sie sich mit dem Desktop der VM über den Azure Virtual Desktop Client.
  2. Starten Sie die Ereignisanzeige, und navigieren Sie zum folgenden Knoten: Anwendungs- und Dienstprotokolle>Microsoft>Windows>RemoteDesktopServices-RdpCoreCDV>Betriebsbereit.
  3. Suchen Sie nach der Ereignis-ID 170. Wenn Sie AVC-Hardware-Encoder aktiviert sehen: 1, verwendet Remote Desktop eine GPU-beschleunigte Kodierung.

Tipp

Wenn Sie eine Verbindung mit Ihrem Sitzungshost außerhalb von Azure Virtual Desktop herstellen, um die GPU-Beschleunigung zu testen, werden die Protokolle stattdessen unter Anwendungen und Dienstprotokolle>Microsoft>Windows>RemoteDesktopServices-RdpCoreTs>Operational in der Ereignisanzeige gespeichert.

Überprüfen Sie die Videokodierung im Vollbildmodus

So überprüfen Sie, ob Remote Desktop die Videokodierung im Vollbildmodus verwendet:

  1. Verbinden Sie sich mit dem Desktop der VM über den Azure Virtual Desktop Client.
  2. Starten Sie die Ereignisanzeige, und navigieren Sie zum folgenden Knoten: Anwendungs- und Dienstprotokolle>Microsoft>Windows>RemoteDesktopServices-RdpCoreCDV>Betriebsbereit.
  3. Suchen Sie nach der Ereignis-ID 162. Wenn Sie AVC verfügbar sehen: 1 Ursprüngliches Profil: 2048, verwendet Remote Desktop die Vollbild-Videokodierung (AVC 444).

Tipp

Wenn Sie eine Verbindung mit Ihrem Sitzungshost außerhalb von Azure Virtual Desktop herstellen, um die GPU-Beschleunigung zu testen, werden die Protokolle stattdessen unter Anwendungen und Dienstprotokolle>Microsoft>Windows>RemoteDesktopServices-RdpCoreTs>Operational in der Ereignisanzeige gespeichert.

Nächste Schritte

Mit diesen Anweisungen sollten Sie mit GPU-Beschleunigung auf einem Sitzungshost (einer VM) arbeiten können. Hier finden Sie weitere Überlegungen zur Aktivierung der GPU-Beschleunigung in einem größeren Host-Pool: