Linux Virtual Delivery Agent 2104

Configurer les graphiques

Cet article fournit des instructions pour configurer et ajuster les graphiques du Linux VDA.

Pour de plus amples informations, consultez les sections Configuration système requise et Présentation de l’installation.

Configuration

Thinwire est la technologie de communication à distance d’écran utilisée dans le Linux VDA. Cette technologie permet aux graphiques générés sur une machine d’être transmis, généralement via un réseau, vers une autre machine.

La stratégie de graphiques Utiliser codec vidéo pour la compression définit le mode graphique par défaut et fournit les options suivantes pour différents cas d’utilisation :

  • Utiliser au choix. Il s’agit du réglage par défaut. Aucune configuration supplémentaire n’est requise. Le maintien de ce paramètre assure que Thinwire est sélectionné pour toutes les connexions Citrix, et est optimisé pour la capacité à monter en charge, la bande passante et une qualité d’image supérieure pour les charges de travail de bureau standard.
  • Pour l’écran entier. Ce paramètre permet de mettre à disposition Thinwire avec H.264 ou H.265 plein écran pour optimiser l’expérience utilisateur et la bande passante, particulièrement dans les cas dans lesquels les graphiques 3D sont fortement sollicités.
  • Pour les zones changeant constamment. La technologie d’affichage adaptatif dans Thinwire identifie les images en mouvement (vidéo, 3D en mouvement) et utilise H.264 uniquement dans la partie de l’écran sur laquelle l’image est en mouvement. L’utilisation sélective du codec vidéo H.264 permet à HDX Thinwire de détecter et de coder des parties de l’écran qui sont fréquemment mises à jour à l’aide du codec vidéo H.264, par exemple du contenu vidéo. La compression d’images immobiles (JPEG, RLE) et la mise en cache de bitmaps continuent à être utilisées pour le reste de l’écran, y compris le texte et l’imagerie photographique. Les utilisateurs bénéficient d’une bande passante plus faible et d’une meilleure qualité pour le contenu vidéo, conjointement avec du texte sans perte ou à des images de haute qualité. Pour activer cette fonctionnalité, remplacez le paramètre de stratégie Utiliser codec vidéo pour la compression par Utiliser au choix (valeur par défaut) ou Pour les zones changeant constamment. Pour plus d’informations, veuillez consulter la section Paramètres de stratégie des graphiques.

Image de Pour l'écran entier

D’autres paramètres de stratégie, y compris les paramètres de stratégie Affichage visuel suivants, peuvent être utilisés pour optimiser les performances de la communication à distance d’écran :

Utilisation de H.264 pour l’option Sans perte si possible dans Thinwire

Par défaut, la préférence Sans perte si possible du paramètre de stratégie Qualité visuelle est désormais H.264 au lieu de JPEG pour les images en mouvement.

Le codage H.264 offre une qualité d’image supérieure. La stratégie Utiliser codec vidéo pour la compression contrôle cette préférence avec la valeur par défaut Utiliser au choix. Pour forcer l’option Sans perte si possible à utiliser JPEG, définissez la stratégie Utiliser codec vidéo pour la compression sur Ne pas utiliser de codec vidéo. Si votre client ne prend pas en charge le mode sélectif H.264, l’option Sans perte si possible revient au format JPEG, quels que soient les paramètres de stratégie. Citrix Receiver pour Windows 4.9 à 4.12, Citrix Receiver pour Linux 13.5 à 13.10, l’application Citrix Workspace 1808 pour Windows et versions ultérieures, et Citrix Workspace application 1808 pour Linux et versions ultérieures prennent en charge Sélectif H.264. Pour plus d’informations sur les paramètres de stratégie Qualité visuelle et Utiliser codec vidéo pour la compression, consultez la section Paramètres de stratégie Affichage visuel et Paramètres de stratégie Graphiques.

Prise en charge du codec vidéo H.265

À compter de la version 7.18, le Linux VDA prend en charge le codec vidéo H.265 pour l’accélération matérielle des graphiques et vidéos distants. Vous pouvez utiliser cette fonctionnalité sur Citrix Receiver pour Windows 4.10 à 4.12 et sur l’application Citrix Workspace 1808 pour Windows et versions ultérieures. Pour bénéficier de cette fonctionnalité, activez-la à la fois sur le Linux VDA et sur votre client. Si le GPU de votre client ne prend pas en charge le décodage H.265 à l’aide de l’interface DXVA, le paramètre de stratégie de décodage H.265 pour les graphiques est ignoré et la session utilise le codec vidéo H.264. Pour plus d’informations, consultez la section Codage vidéo H.265.

Pour activer le codage matériel H.265 sur le VDA :

  1. Activez la stratégie Utiliser le codage matériel pour le codec vidéo.
  2. Activez la stratégie Optimiser pour la charge des graphiques 3D.
  3. Assurez-vous que la stratégie Utiliser codec vidéo pour la compression est définie par défaut ou définie sur Pour l’écran entier.
  4. Assurez-vous que la stratégie Qualité visuelle n’est PAS définie sur Sans perte si possible ni sur Toujours sans perte.

Pour activer le codage matériel H.265 sur votre client, consultez la section Codage vidéo H.265.

Prise en charge du codage logiciel YUV444

Le Linux VDA prend en charge le codage logiciel YUV444. Le schéma de codage YUV attribue à chaque pixel des valeurs de luminosité et de couleur. En YUV, Y représente la luminosité ou les valeurs « luma » et UV représentent la couleur ou les valeurs « chroma ». Vous pouvez utiliser cette fonctionnalité du Linux VDA sur Citrix Receiver pour Windows 4.10 à 4.12 et sur l’application Citrix Workspace 1808 pour Windows et versions ultérieures.

Chaque valeur unique Y, U et V comprend 8 bits, ou un octet, de données. Le format de données YUV444 transmet 24 bits par pixel. Le format de données YUV422 partage les valeurs U et V entre deux pixels, ce qui permet un taux de transmission moyen de 16 bits par pixel. Le tableau suivant contient une comparaison intuitive entre YUV444 et YUV420.

YUV444 YUV420
image de YUV444 image de YUV420

Pour activer le codage logiciel YUV444 sur le VDA :

  1. Assurez-vous que la stratégie Utiliser codec vidéo pour la compression est définie sur Pour l’écran entier.
  2. Assurez-vous que la stratégie Qualité visuelle est définie sur Toujours sans perte ou Sans perte si possible

Ajuster les débits moyens en fonction des estimations de bande passante

Citrix améliore le codage matériel HDX 3D Pro en ajustant les débits binaires moyens en fonction des estimations de bande passante.

Lorsque le codage matériel HDX 3D Pro est utilisé, le VDA peut estimer par intermittence la bande passante du réseau et ajuster les débits des images codées en fonction des estimations de bande passante. Cette nouvelle fonctionnalité fournit un mécanisme pour équilibrer la netteté et la fluidité.

Par défaut, cette fonction est activée. Pour le désactiver, exécutez la commande suivante :

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-->

Outre l’utilisation de cette fonctionnalité, vous pouvez également exécuter les commandes suivantes pour régler la netteté et la fluidité. Les paramètres AverageBitRatePercent et MaxBitRatePercent définissent le pourcentage d’utilisation de la bande passante. Les valeurs les plus élevées que vous définissez, les graphiques plus nets et la fluidité moindre que vous obtenez. La plage de réglages recommandée est de 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-->

Avec le réglage de débit binaire moyen, lorsque votre écran reste immobile, l’image la plus récente reste dans un état de mauvaise qualité car aucune nouvelle image n’est envoyée. L’amélioration de la netteté peut résoudre ce problème en reconfigurant et en envoyant immédiatement l’image la plus récente avec la plus haute qualité.

Pour une liste complète des stratégies prises en charge par Linux VDA Thinwire, consultez la Liste des stratégies prises en charge.

Pour plus d’informations sur la configuration de la prise en charge de moniteurs multiples sur Linux VDA, consultez CTX220128.

Dépannage

Vérifier quel mode graphique est utilisé

Exécutez la commande suivante pour vérifier quel mode graphique est utilisé (0 signifie TW+ ; 1 signifie codec vidéo plein écran) :

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

Le résultat se présente comme suit :

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

Vérifier si H.264 est utilisé

Exécutez la commande suivante pour vérifier si H.264 est en cours d’utilisation (0 signifie pas en cours d’utilisation ; 1 signifie en cours d’utilisation) :

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

Le résultat se présente comme suit :

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

Vérifier si H.265 est utilisé

Exécutez la commande suivante pour vérifier si H.265 plein écran est en cours d’utilisation (0 signifie pas en cours d’utilisation ; 1 signifie en cours d’utilisation) :

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

Le résultat se présente comme suit :

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

Vérifier quel schéma de codage YUV est utilisé

Exécutez la commande suivante pour vérifier quel schéma de codage YUV est utilisé (0 signifie YUV420. 1 signifie YUV422. 2 signifie YUV444) :

Remarque : la valeur de YuvFormat n’a de sens que lorsqu’un codec vidéo est utilisé.

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

Le résultat se présente comme suit :

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

Vérifier si le codage logiciel YUV444 est utilisé

Exécutez la commande suivante pour vérifier si le codage logiciel YUV444 est utilisé :

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

Lorsque YUV444 est utilisé, le résultat se présente comme suit :

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

Vérifier si le codage matériel est utilisé pour 3D Pro

Exécutez la commande suivante (0 signifie qu’il n’est pas utilisé ; 1 signifie qu’il est utilisé) :

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

Le résultat se présente comme suit :

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

Une autre méthode consiste à utiliser la commande nvidia-smi. Les résultats se présentent comme suit lorsque le codage matériel est utilisé :

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-->

Vérifier que le pilote graphique NVIDIA GRID est correctement installé

Pour vérifier si le pilote graphique NVIDIA GRID est correctement installé, exécutez nvidia-smi. Le résultat se présente comme suit :

+------------------------------------------------------+
| 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-->

Définissez la configuration correcte pour la carte :

etc/X11/ctx-nvidia.sh

Problèmes d’actualisation des multi-écrans HDX 3D Pro

Si vous rencontrez des problèmes d’actualisation des écrans autres que l’écran principal, vérifiez que la licence NVIDIA GRID est disponible.

Vérifier les journaux d’erreurs Xorg

Le nom du fichier journal Xorg est similaire à Xorg.{DISPLAY}.log dans le dossier /var/log/.

Problèmes connus et limitations

Pour vGPU, la console locale Citrix Hypervisor affiche l’écran de la session de bureau ICA

Solution : désactivez la console VGA locale de la machine virtuelle en exécutant la commande suivante :

xe vm-param-set uuid=<vm-uuid> platform:vgpu_extra_args="disable_vnc=1"
<!--NeedCopy-->

Les cartes graphiques NVIDIA K2 ne prennent pas en charge le codage matériel YUV444 en mode passthrough

Si le paramètre de stratégie Sans perte si possible est activé, un écran noir ou gris apparaît lorsque les utilisateurs lancent une application ou une session de bureau avec une carte graphique NVIDIA K2. Ce problème se produit car les cartes graphiques NVIDIA K2 ne prennent pas en charge le codage matériel YUV444 en mode passthrough. Pour plus d’informations, consultez la page Video Encode and Decode GPU Support Matrix.

Les fenêtres contextuelles du bureau Gnome 3 sont lentes lors de l’ouverture de session

Il s’agit d’une limitation du démarrage de session de bureau Gnome 3.

Certaines applications OpenGL/WebGL ne s’affichent pas correctement après le redimensionnement de l’application Citrix Workspace

Si vous redimensionnez la fenêtre de l’application Citrix Workspace, la résolution de l’écran est modifiée. Le pilote propriétaire NVIDIA modifie certains états internes et peut attendre des applications une réponse adaptée. Par exemple, l’élément de bibliothèque WebGL lightgl.js peut générer une erreur « Rendering to this texture is not supported (incomplete frame buffer) ».

Configurer les graphiques