Linux Virtual Delivery Agent 2411

Grafikkartenkonfiguration und Feinabstimmung

Dieser Artikel beschreibt die Grafikkartenkonfiguration und Feinabstimmung des Linux VDA.

Weitere Informationen finden Sie unter Systemanforderungen und im Abschnitt Installationsübersicht.

Konfiguration

Für 3D-Grafik-Workloads optimieren

  • Diese Einstellung konfiguriert die entsprechenden Standardwerte, die am besten für grafikintensive Workloads geeignet sind. Aktivieren Sie diese Einstellung für Benutzer, deren Workload sich auf grafikintensive Anwendungen konzentriert. Wenden Sie diese Richtlinie nur an, wenn eine GPU für die Sitzung verfügbar ist. Alle anderen Einstellungen, die die durch diese Richtlinie festgelegten Standardeinstellungen explizit überschreiben, haben Vorrang.

  • Standardmäßig ist Für 3D-Grafik-Workloads optimieren deaktiviert.

Videocodec für Komprimierung

  • Thinwire ist die im Linux VDA verwendete Display-Remoting-Technologie. Die Technologie ermöglicht die Übertragung von Grafiken, die auf einem Computer generiert wurden, typischerweise über ein Netzwerk, an einen anderen Computer zur Anzeige.

Die Grafikrichtlinie Videocodec für Komprimierung verwenden legt den Standard-Grafikmodus fest und bietet die folgenden Optionen für verschiedene Anwendungsfälle:

  • Verwenden, wenn bevorzugt. Diese Einstellung ist die Standardeinstellung. Es ist keine zusätzliche Konfiguration erforderlich. Sie stellt sicher, dass Thinwire für alle Citrix®-Verbindungen ausgewählt und für Skalierbarkeit, Bandbreite und überragende Bildqualität für typische Desktop-Workloads optimiert wird.
  • Für den gesamten Bildschirm. Liefert Thinwire mit Vollbild-H.264 oder H.265, um die Benutzererfahrung und Bandbreite zu optimieren, insbesondere bei intensiver Nutzung von 3D-Grafiken. Sitzungswasserzeichen wird unterstützt, wenn Für den gesamten Bildschirm ausgewählt ist oder wenn Verwenden, wenn bevorzugt ausgewählt und Für 3D-Grafik-Workloads optimieren aktiviert ist.
  • Für sich aktiv ändernde Bereiche. Die adaptive Anzeigetechnologie in Thinwire identifiziert bewegte Bilder (Video, 3D in Bewegung). Sie verwendet AV1, H.265 oder H.264 nur in dem Teil des Bildschirms, in dem sich das Bild bewegt. Die selektive Verwendung des AV1-, H.265- oder H.264-Videocodecs ermöglicht es HDX Thinwire, häufig aktualisierte Bildschirmbereiche zu erkennen und zu kodieren. Standbildkomprimierung (JPEG, RLE) und Bitmap-Caching werden weiterhin für den Rest des Bildschirms verwendet, einschließlich Text und fotografischer Bilder. Benutzer profitieren von geringerem Bandbreitenverbrauch und besserer Qualität für Videoinhalte, kombiniert mit verlustfreiem Text oder hochwertigen Bildern an anderer Stelle. Die selektive Verwendung von AV1 und H.265 wird nicht unterstützt, wenn die Richtlinie Visuelle Qualität auf Immer verlustfrei oder Verlustfrei aufbauen eingestellt ist.

    Für den gesamten Bildschirm ausgewählt

Einige andere Richtlinieneinstellungen, einschließlich der folgenden Richtlinieneinstellungen für die visuelle Anzeige, können zur Feinabstimmung der Leistung des Display-Remoting verwendet werden:

  • Bevorzugte Farbtiefe für einfache Grafiken
  • Zielbildrate
  • Visuelle Qualität

  • AV1/H.265/H.264 Hardwarekodierung

  • Die Richtlinie Hardwarekodierung für Videocodec verwenden ermöglicht die Nutzung der GPU-Hardwarebeschleunigung, falls verfügbar, um Bildschirmelemente mit dem Videocodec zu komprimieren. Die GPU-Hardwarebeschleunigung optimiert die Hardware-Ressourcennutzung und verbessert die Leistung in Bildern pro Sekunde (FPS) erheblich.

  • Verwenden, wenn bevorzugt
  • Für den gesamten Bildschirm
    • Für sich aktiv ändernde Bereiche

    • Um die Hardware-Videokomprimierung zu aktivieren, führen Sie die folgenden Schritte aus:

  1. Setzen Sie die Richtlinie Hardwarekodierung für Videocodec verwenden auf Aktiviert.
  2. Setzen Sie Videocodec für Komprimierung verwenden auf Verwenden, wenn bevorzugt, Für den gesamten Bildschirm oder Für sich aktiv ändernde Bereiche. Stellen Sie sicher, dass sie nicht auf Videocodec nicht verwenden eingestellt ist.

    • Um nutzbar zu sein, muss der AV1- oder H.265-Videocodec sowohl auf dem VDA als auch in der Citrix Workspace-App unterstützt und aktiviert sein. AV1 wird bei der Codec-Aushandlung gegenüber H.265 und H.264 bevorzugt. Wenn AV1 nicht unterstützt wird, wird H.265 ausgehandelt. Wenn sowohl AV1 als auch H.265 nicht unterstützt werden, greifen die Sitzungen auf die Verwendung des H.264-Videocodecs zurück. Wenn keine GPU-Hardware verfügbar ist, greift der VDA auf CPU-basierte Kodierung mit dem Software-Videocodec zurück.

Anforderungen für AV1-Hardwarekodierung

VDA
Client
  • Citrix Workspace™-App 2305 für Windows oder höher
  • Client-GPU, die AV1-Dekodierung unterstützt:
    • NVIDIA Ampere oder höher
    • Intel 11. Generation / Arc oder höher
    • AMD Radeon RX 6000 / Radeon Pro W6000 Serie (RDNA2) oder höher

Anforderungen für H.265-Hardwarekodierung

Client
-  Citrix Receiver für Windows 4.10 bis 4.12
  • Citrix Workspace-App 1808 für Windows und höher

H.265/H.264 verlustfreie Komprimierung

H.265/H.264 verlustfreie Komprimierung ist für die HDX 3D PRO Hardwarebeschleunigung durch NVIDIA GPUs verfügbar. H.265 verlustfreie Komprimierung erfordert Citrix Workspace-App 2305 für Windows oder höher. H.264 verlustfreie Komprimierung erfordert die folgenden Clients:

  • Citrix Workspace-App 2303 für Windows oder höher
  • Citrix Workspace-App 2301 für Mac oder höher mit dem Apple M1-Chip

Um die H.265/H.264 verlustfreie Komprimierung zu aktivieren, führen Sie die folgenden Schritte aus:

  1. Setzen Sie die Richtlinie Hardwarekodierung für Videocodec verwenden auf Aktiviert.
  2. Setzen Sie die Richtlinie Videocodec für Komprimierung verwenden auf Für den gesamten Bildschirm.
  3. Setzen Sie die Richtlinie Visuelle Qualität auf Immer verlustbehaftet oder Verlustfrei aufbauen.

Visuell verlustfreie Komprimierung zulassen

Die Richtlinie Visuell verlustfreie Komprimierung zulassen ermöglicht die Verwendung einer visuell verlustfreien Komprimierung anstelle einer echten verlustfreien Komprimierung für Grafiken. Visuell verlustfrei verbessert die Leistung gegenüber echter verlustfreier Komprimierung, weist jedoch geringfügige, visuell nicht wahrnehmbare Verluste auf. Diese Einstellung ändert die Art und Weise, wie die Werte der Einstellung Visuelle Qualität verwendet werden.

Die Richtlinie Visuell verlustfreie Komprimierung zulassen ist standardmäßig deaktiviert. Um die visuell verlustfreie Komprimierung zu aktivieren, setzen Sie Visuell verlustfreie Komprimierung zulassen auf Aktiviert und die Richtlinie Visuelle Qualität auf Verlustfrei aufbauen.

Wenn die Richtlinie Videocodec für Komprimierung verwenden auf Videocodec nicht verwenden eingestellt ist, gilt die visuell verlustfreie Komprimierung für die Standbildkodierung. Wenn die Richtlinie Videocodec für Komprimierung verwenden auf einen anderen Grafikmodus als Videocodec nicht verwenden eingestellt ist, gilt die visuell verlustfreie Komprimierung für die H.264-Kodierung.

Weitere Informationen zu den Visuelle Qualität- und Videocodec für Komprimierung verwenden-Richtlinieneinstellungen finden Sie unter Richtlinieneinstellungen für die visuelle Anzeige und Grafikrichtlinieneinstellungen.

Schieberegler für Grafikqualität

Wir haben einen Schieberegler für die Grafikqualität in das Grafikstatusanzeigetool integriert, das in Ihren virtuellen Linux-Sitzungen ausgeführt wird. Der Schieberegler hilft, die richtige Balance zwischen Bildqualität und Interaktivität zu finden.

Um den Schieberegler zu verwenden, führen Sie die folgenden Schritte aus:

  1. Aktivieren Sie die Richtlinie Grafikanzeige des Status in Citrix Studio.

    Die Richtlinie für die Grafikanzeige des Status

  2. Öffnen Sie das Terminal und führen Sie den Befehl ctxslider aus. Die Schieberegler-Benutzeroberfläche wird angezeigt.

    Hinweis:

    • Wenn Sie die Richtlinie Visuelle Qualität auf Immer verlustfrei oder Verlustfrei erstellen eingestellt haben, wird die Schieberegler-Benutzeroberfläche nicht angezeigt.

    • Sie können die Schieberegler-Benutzeroberfläche sowohl über das Terminal als auch über die Systemleiste starten.

    Schieberegler für Grafikqualität

    Die folgenden Optionen sind jetzt verfügbar:

    • Um die Bildqualität zu ändern, bewegen Sie den Schieberegler. Der Schieberegler unterstützt einen Bereich von 0–9.
    • Um systemdefinierte Einstellungen zu verwenden, wählen Sie System entscheiden lassen.
    • Um in den verlustfreien Modus zu wechseln, wählen Sie Pixelgenau.

Durchschnittliche Bitraten basierend auf Bandbreitenschätzungen anpassen

Citrix verbessert die HDX™ 3D Pro-Hardwarekodierung durch Anpassen der durchschnittlichen Bitraten basierend auf Bandbreitenschätzungen.

Wenn die HDX 3D Pro-Hardwarekodierung verwendet wird, kann der VDA die Bandbreite des Netzwerks zeitweise schätzen und die Bitraten der kodierten Frames entsprechend anpassen. Diese neue Funktion bietet einen Mechanismus zum Ausgleich zwischen Schärfe und Flüssigkeit.

Diese Funktion ist standardmäßig aktiviert. Um sie zu deaktivieren, führen Sie den folgenden Befehl aus:

sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "DisableReconfigureEncoder" -d "0x00000001" --force
<!--NeedCopy-->

Zusätzlich zur Verwendung dieser Funktion können Sie auch die folgenden Befehle ausführen, um zwischen Schärfe und Flüssigkeit zu wechseln. Die Parameter AverageBitRatePercent und MaxBitRatePercent legen den Prozentsatz der Bandbreitennutzung fest. Je höhere Werte Sie einstellen, desto schärfer sind die Grafiken und desto geringer ist die Flüssigkeit. Der empfohlene Einstellungsbereich liegt bei 50–100.

sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AverageBitRatePercent" -d "90" --force

sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "MaxBitRatePercent" -d "100" --force
<!--NeedCopy-->

Bei der Anpassung der durchschnittlichen Bitrate bleibt der zuletzt gesendete Frame in einem Zustand geringer Qualität, wenn Ihr Bildschirm stillsteht, da keine neuen Frames gesendet werden. Die Schärfungsunterstützung kann dieses Problem beheben, indem der zuletzt gesendete Frame neu konfiguriert und sofort in höchster Qualität gesendet wird.

Eine vollständige Liste der vom Linux VDA Thinwire unterstützten Richtlinien finden Sie unter Liste der unterstützten Richtlinien.

Informationen zur Konfiguration der Multi-Monitor-Unterstützung auf dem Linux VDA finden Sie unter CTX220128.

Parallele Verarbeitung

Thinwire kann die Anzahl der Bilder pro Sekunde (FPS) durch Parallelisierung bestimmter Aufgaben verbessern, wobei ein geringfügig höherer Gesamt-CPU-Verbrauch anfällt. Diese Funktion ist standardmäßig deaktiviert. Um die Funktion zu aktivieren, führen Sie den folgenden Befehl auf Ihrem VDA aus:

sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "ParallelProcessing" -d "0x00000001" --force
<!--NeedCopy-->

Fehlerbehebung

Überprüfen, welcher Grafikmodus verwendet wird

Führen Sie den folgenden Befehl aus, um zu überprüfen, welcher Grafikmodus verwendet wird (0 bedeutet TW+. 1 bedeutet Vollbild-Videocodec):

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep GraphicsMode
<!--NeedCopy-->

Das Ergebnis ähnelt:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "GraphicsMode" -d "0x00000000" --force

Überprüfen, ob AV1 verwendet wird

Hinweis:

Um zu überprüfen, welcher Videocodec für die aktuelle Sitzung verwendet wird, führen Sie entweder einen der unten angegebenen Befehle aus oder überprüfen Sie den Grafikstatus über die Systemleiste.

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob AV1 verwendet wird (0 bedeutet nicht in Gebrauch. 1 bedeutet in Gebrauch):

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep AV1
<!--NeedCopy-->

Das Ergebnis kann beispielsweise ähneln:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "AV1" -d "0x00000000" --force

Überprüfen, ob H.265 verwendet wird

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob Vollbild-H.265 verwendet wird (0 bedeutet nicht in Gebrauch. 1 bedeutet in Gebrauch):

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep H265
<!--NeedCopy-->

Das Ergebnis kann beispielsweise ähneln:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "H265" -d "0x00000000" --force

Überprüfen, ob H.264 verwendet wird

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob H.264 verwendet wird (0 bedeutet nicht in Gebrauch. 1 bedeutet in Gebrauch):

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep H264
<!--NeedCopy-->

Das Ergebnis kann beispielsweise ähneln:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "H264" -d "0x00000000" --force

Überprüfen, welches YUV-Kodierungsschema verwendet wird

Führen Sie den folgenden Befehl aus, um zu überprüfen, welches YUV-Kodierungsschema verwendet wird (0 bedeutet YUV420. 1 bedeutet YUV422. 2 bedeutet YUV444):

Hinweis:

Der Wert von YUVFormat ist nur aussagekräftig, wenn ein Videocodec verwendet wird.

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep YUVFormat
<!--NeedCopy-->

Zum Beispiel kann das Ergebnis wie folgt aussehen:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "YUVFormat" -d "0x00000000" --force

Überprüfen, ob die YUV444-Softwarekodierung verwendet wird

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die YUV444-Softwarekodierung verwendet wird:

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep Graphics
<!--NeedCopy-->

Wenn YUV444 verwendet wird, sieht das Ergebnis wie folgt aus:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "GraphicsMode" -d "0x00000001" --force

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "H264" -d "0x00000001" --force

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000000" --force

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "YUVFormat" -d "0x00000002" --force

Überprüfen, ob HDX 3D Pro aktiviert ist

Führen Sie die folgenden Befehle aus, um zu überprüfen, ob HDX 3D Pro aktiviert ist:

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep ProductEdition

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep StackSessionMode

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep 3DPro
<!--NeedCopy-->

Wenn HDX 3D Pro aktiviert ist, sieht das Ergebnis wie folgt aus:

create -k "HKLM\Software\Citrix\VirtualDesktopAgent\State" -t "REG_SZ" -v "ProductEdition" -d "<PLT or ENT>" --force

create -k "HKLM\System\CurrentControlSet\Control\Citrix\WinStations\tcp" -t "REG_DWORD" -v "StackSessionMode" -d "0x00000000" --force

create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "3DPro" -d "0x00000000" --force

Um zu überprüfen, ob die erforderlichen NVIDIA-Bibliotheken für HDX 3D Pro geladen sind, führen Sie den Befehl nvidia-smi auf dem Linux VDA aus. Das Ergebnis sieht wie folgt aus:

Tue Apr 12 10:42:03 2016
+------------------------------------------------------+
| NVIDIA-SMI 361.28     Driver Version: 361.28         |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GRID K1             Off  | 0000:00:05.0     Off |                  N/A |
| N/A   42C    P0    14W /  31W |    207MiB /  4095MiB |      8%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      2164  C+G   /usr/local/bin/ctxgfx                          106MiB |
|    0      2187    G   Xorg                                            85MiB |
+-----------------------------------------------------------------------------+
<!--NeedCopy-->

Überprüfen, ob die Hardwarekodierung für 3D Pro verwendet wird

Führen Sie den folgenden Befehl aus (0 bedeutet nicht in Gebrauch. 1 bedeutet in Gebrauch):

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep HardwareEncoding
<!--NeedCopy-->

Wenn 3D Pro verwendet wird, sieht das Ergebnis wie folgt aus:

create -k "HKLM\Software\Citrix\Ica\Session\1\Graphics" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000001" --force

Überprüfen, ob der NVIDIA GRID-Grafiktreiber korrekt installiert ist

Um zu überprüfen, ob der NVIDIA GRID-Grafiktreiber korrekt installiert ist, führen Sie nvidia-smi aus. Das Ergebnis sieht wie folgt aus:

+------------------------------------------------------+
| NVIDIA-SMI 352.70     Driver Version: 352.70         |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla M60           Off  | 0000:00:05.0     Off |                  Off |
| N/A   20C    P0    37W / 150W |     19MiB /  8191MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
<!--NeedCopy-->

Legen Sie die korrekte Konfiguration für die Karte fest:

etc/X11/ctx-nvidia.sh

HDX 3D Pro Multi-Monitor-Neuzeichnungsprobleme

Wenn Sie Neuzeichnungsprobleme auf anderen Bildschirmen als dem primären Monitor feststellen, überprüfen Sie, ob die NVIDIA GRID-Lizenz verfügbar ist.

Xorg-Fehlerprotokolle überprüfen

Die Protokolldatei von Xorg hat einen ähnlichen Namen wie Xorg.{DISPLAY}.log im Ordner /var/log/.

Bekannte Probleme und Einschränkungen

Bei vGPU zeigt die lokale Konsole von XenServer (ehemals Citrix Hypervisor™) den ICA-Desktopsitzungsbildschirm an

Problemumgehung: Deaktivieren Sie die lokale VGA-Konsole der VM, indem Sie den folgenden Befehl ausführen:

[root@xenserver® ~]# xe vgpu-param-set uuid=vgpu-uuid extra_args=disable_vnc=1
<!--NeedCopy-->

Gnome 3 Desktop-Popups langsam beim Anmelden

Dies ist eine Einschränkung des Startvorgangs der Gnome 3 Desktop-Sitzung.

Einige OpenGL/WebGL-Anwendungen werden beim Ändern der Größe des Citrix Workspace-App-Fensters nicht korrekt gerendert

Das Ändern der Größe des Citrix Workspace-App-Fensters ändert die Bildschirmauflösung. Der proprietäre NVIDIA-Treiber ändert einige interne Zustände und erfordert möglicherweise, dass Anwendungen entsprechend reagieren. Zum Beispiel könnte das WebGL-Bibliothekselement lightgl.js einen Fehler auslösen, der besagt, dass Das Rendern auf diese Textur wird nicht unterstützt (unvollständiger Framebuffer).

Grafikkartenkonfiguration und Feinabstimmung