Configurer les graphiques
Cet article fournit des conseils pour la configuration et l’optimisation des graphiques du VDA Linux.
Pour plus d’informations, consultez la section Configuration système requise et la section Présentation de l’installation.
Paramètres de configuration
Il existe plusieurs paramètres de configuration liés aux graphiques sous HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Citrix\Thinwire que vous pouvez ajuster à l’aide de l’utilitaire ctxreg.
Comment activer Thinwire Plus
Thinwire Plus est activé par défaut, à la fois pour le VDA standard et pour 3D Pro.
Comment activer le H.264
En plus de la configuration requise pour le système d’exploitation, le H.264 a une exigence minimale pour la version de l’application Citrix Workspace (anciennement Citrix Receiver). Si le client ne répond pas aux exigences, il revient à Thinwire Plus.
| Système d’exploitation | Configuration minimale requise pour le H.264 |
|---|---|
| Windows | 3.4 ou version ultérieure |
| Mac OS X | 11.8 ou version ultérieure |
| Linux | 13.0 ou version ultérieure |
| Android | 3.5 |
| iOS | 5.9 |
| Chrome OS | 1.4 |
La dernière matrice de fonctionnalités de l’application Citrix Workspace est disponible à l’adresse https://docs.citrix.com/fr-fr/citrix-workspace-app/citrix-workspace-app-feature-matrix.html.
Exécutez la commande suivante pour annoncer l’encodage H.264 sur le VDA :
- sudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" --force
<!--NeedCopy-->
Comment activer l’encodage matériel dans HDX™ 3D Pro
Pour HDX 3D Pro, le paramètre AdvertiseH264 active uniquement l’encodage logiciel H.264.
- Exécutez la commande suivante pour activer l’encodage matériel :
sudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000001" --force
<!--NeedCopy-->
-
Remarque :
-
Si vous obtenez l’erreur
ctxreg command can't be found, utilisez la commandectxregavec un chemin d’accès complet. Par exemple, utilisezsudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" –forceau lieu desudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" –force.
-
Comment optimiser Thinwire Plus pour une bande passante inférieure
- MaxColorDepth
```
Default 0x20, type DWORD
<!--NeedCopy--> ```
Cette option spécifie la profondeur de couleur des graphiques transférés au client via le protocole Thinwire.
Pour économiser de la bande passante, définissez-la sur 0x10 (ce qui représente la profondeur de couleur préférée pour les graphiques simples) ou sur 0x8 (le mode expérimental à faible bande passante).
- Quality
Qualité visuelle
```
Default: 0x1(medium), type: DWORD, valid values: 0x0(low), 0x1(medium), 0x2(high), 0x3(build to lossless), 0x4 always lossless.
<!--NeedCopy--> ```
Pour économiser de la bande passante, définissez Quality sur 0x0 (faible).
-
Plus de paramètres
-
TargetFPS
Fréquence d’images cible
Default: 0x1e (30), Type: DWORD <!--NeedCopy--> -
MinFPS
Fréquence d’images minimale cible
Default: 0xa (10), Type: DWORD <!--NeedCopy--> -
MaxScreenNum
Nombre maximal de moniteurs que le client peut avoir
Default: 0x2, Type: DWORD <!--NeedCopy-->Pour un VDA standard, vous pouvez définir une valeur maximale allant jusqu’à 10. Pour 3D Pro, la valeur maximale autorisée est 4.
-
Dépannage
Vérifier l’encodage utilisé
Exécutez la commande suivante pour vérifier si l’encodage H.264 est utilisé (1 signifie H.264 ; 0 signifie TW+) :
sudo ctxreg dump | grep H264
<!--NeedCopy-->
Les résultats ressemblent à :
create -k "HKLM\Software\Citrix\Ica\Session\1\Graphics" -t "REG_DWORD" -v "H264" -d "0x00000001" --force
create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" --force
Vérifier si l’encodage matériel est utilisé pour 3D Pro
Exécutez la commande suivante (0 signifie non utilisé ; 1 signifie utilisé) :
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep HardwareEncoding
<!--NeedCopy-->
Les résultats ressemblent à :
create -k "HKLM\Software\Citrix\Ica\Session\1\Graphics" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000001" --force
Une autre façon consiste à utiliser la commande nvidia-smi. Les sorties ressemblent à ce qui suit si l’encodage 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 que le pilote graphique NVIDIA GRID est correctement installé, exécutez nvidia-smi. Les résultats ressemblent à :
+------------------------------------------------------+
| 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 de redessin multi-écrans HDX 3D Pro
Si vous rencontrez des problèmes de redessin sur des écrans autres que le moniteur principal, vérifiez que la licence NVIDIA GRID est disponible.
Vérifier les journaux d’erreurs Xorg
Le fichier journal de Xorg est nommé de manière similaire à Xorg.{DISPLAY}.log dans le dossier /var/log/.
Problèmes connus et limitations
Pour vGPU, la console locale XenServer® affiche l’écran de session de bureau ICA
Solution de contournement : Désactivez la console VGA locale de la VM en exécutant la commande suivante :
xe vm-param-set uuid=<vm-uuid> platform:vgpu_extra_args="disable_vnc=1"
<!--NeedCopy-->
L’API NVENC n’est pas prise en charge dans les profils vGPU autres que 8Q
Les profils vGPU de la carte NVIDIA Tesla M60 autres que 8Q ne prennent pas en charge cuda. Par conséquent, l’API NVENC et l’encodage matériel Citrix® 3D Pro ne sont pas disponibles.
Les cartes graphiques NVIDIA K2 ne prennent pas en charge l’encodage matériel YUV444 en mode pass-through
Il s’agit d’une limitation des cartes graphiques NVIDIA K2.
Les fenêtres contextuelles du bureau Gnome 3 sont lentes lors de la connexion
Il s’agit d’une limitation du démarrage de la session de bureau Gnome 3.
Certaines applications OpenGL/WebGL ne s’affichent pas correctement lors du redimensionnement de la fenêtre Citrix Receiver
Le redimensionnement de la fenêtre Citrix Receiver modifie la résolution de l’écran. Le pilote propriétaire NVIDIA modifie certains états internes et peut exiger que les applications répondent en conséquence. Par exemple, l’élément de bibliothèque WebGL lightgl.js peut générer une erreur indiquant que « Rendering to this texture is not supported (incomplete frame buffer) ».