Configurar gráficos
Este artículo proporciona orientación para la configuración y el ajuste preciso de los gráficos de Linux VDA.
Para obtener más información, consulta los Requisitos del sistema y la sección Información general sobre la instalación.
Parámetros de configuración
Hay varios parámetros de configuración relacionados con los gráficos en HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Citrix\Thinwire que puedes ajustar con la utilidad ctxreg.
Cómo habilitar Thinwire Plus
Thinwire Plus está habilitado de forma predeterminada, tanto para VDA estándar como para 3D Pro.
Cómo habilitar H.264
Además del requisito del sistema operativo, H.264 tiene un requisito mínimo para la versión de la aplicación Citrix Workspace (anteriormente Citrix Receiver). Si el cliente no cumple los requisitos, se recurre a Thinwire Plus.
| Sistema operativo | Requisito mínimo para H.264 |
|---|---|
| Windows | 3.4 o posterior |
| Mac OS X | 11.8 o posterior |
| Linux | 13.0 o posterior |
| Android | 3.5 |
| iOS | 5.9 |
| Chrome OS | 1.4 |
La matriz de funciones más reciente de la aplicación Citrix Workspace está disponible en https://docs.citrix.com/en-us/citrix-workspace-app/citrix-workspace-app-feature-matrix.html.
Ejecuta el siguiente comando para anunciar la codificación H.264 en el VDA:
- sudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" --force
<!--NeedCopy-->
Cómo habilitar la codificación de hardware en HDX™ 3D Pro
Para HDX 3D Pro, la configuración AdvertiseH264 solo habilita la codificación de software H.264.
- Ejecuta el siguiente comando para habilitar la codificación de hardware:
sudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000001" --force
<!--NeedCopy-->
-
Nota:
-
Si recibes el error
ctxreg command can't be found, usa el comandoctxregcon una ruta completa. Por ejemplo, usasudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" –forceen lugar desudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" –force.
-
Cómo ajustar Thinwire Plus para un ancho de banda inferior
- MaxColorDepth
```
Default 0x20, type DWORD
<!--NeedCopy--> ```
Esta opción especifica la profundidad de color de los gráficos transferidos al cliente a través del protocolo Thinwire.
Para ahorrar ancho de banda, configúralo en 0x10 (que representa la profundidad de color preferida para gráficos simples) o en 0x8 (el modo experimental de ancho de banda bajo).
- Quality
Calidad visual
```
Default: 0x1(medium), type: DWORD, valid values: 0x0(low), 0x1(medium), 0x2(high), 0x3(build to lossless), 0x4 always lossless.
<!--NeedCopy--> ```
Para ahorrar ancho de banda, establece Quality en 0x0 (bajo).
-
Más parámetros
-
TargetFPS
Velocidad de fotogramas objetivo
Default: 0x1e (30), Type: DWORD <!--NeedCopy--> -
MinFPS
Velocidad de fotogramas mínima objetivo
Default: 0xa (10), Type: DWORD <!--NeedCopy--> -
MaxScreenNum
Número máximo de monitores que puede tener el cliente
Default: 0x2, Type: DWORD <!--NeedCopy-->Para un VDA estándar, puedes establecer un valor máximo de hasta 10. Para 3D Pro, el valor máximo permitido es 4.
-
Solución de problemas
Comprobar qué codificación se está usando
Ejecuta el siguiente comando para comprobar si la codificación H.264 está en uso (1 significa H.264; 0 significa TW+):
sudo ctxreg dump | grep H264
<!--NeedCopy-->
Los resultados son similares a:
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
Comprobar si la codificación de hardware se está usando para 3D Pro
Ejecuta el siguiente comando (0 significa que no está en uso; 1 significa que está en uso):
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep HardwareEncoding
<!--NeedCopy-->
Los resultados son similares a:
create -k "HKLM\Software\Citrix\Ica\Session\1\Graphics" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000001" --force
Otra forma es usar el comando nvidia-smi. Los resultados son similares a los siguientes si la codificación de hardware está en uso:
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-->
Comprobar que el controlador de gráficos NVIDIA GRID está instalado correctamente
Para comprobar que el controlador de gráficos NVIDIA GRID está instalado correctamente, ejecuta nvidia-smi. Los resultados son similares a:
+------------------------------------------------------+
| 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-->
Establece la configuración correcta para la tarjeta:
etc/X11/ctx-nvidia.sh
Problemas de redibujado en varios monitores de HDX 3D Pro
Si ves problemas de redibujado en pantallas que no son el monitor principal, comprueba que la licencia de NVIDIA GRID esté disponible.
Comprobar los registros de errores de Xorg
El archivo de registro de Xorg se denomina de forma similar a Xorg.{DISPLAY}.log en la carpeta /var/log/.
Problemas conocidos y limitaciones
Para vGPU, la consola local de XenServer® muestra la pantalla de la sesión de escritorio ICA
Solución alternativa: Deshabilita la consola VGA local de la VM ejecutando el siguiente comando:
xe vm-param-set uuid=<vm-uuid> platform:vgpu_extra_args="disable_vnc=1"
<!--NeedCopy-->
La API NVENC no es compatible con perfiles de vGPU distintos de 8Q
Los perfiles de vGPU de la tarjeta NVIDIA Tesla M60 distintos de 8Q no son compatibles con CUDA; como resultado, la API NVENC y la codificación de hardware Citrix® 3D Pro no están disponibles.
Las tarjetas gráficas NVIDIA K2 no son compatibles con la codificación de hardware YUV444 en modo de paso a través
Esta es una limitación de las tarjetas gráficas NVIDIA K2.
Las ventanas emergentes del escritorio Gnome 3 son lentas al iniciar sesión
Es una limitación del inicio de sesión del escritorio Gnome 3.
Algunas aplicaciones OpenGL/WebGL no se renderizan correctamente al cambiar el tamaño de la ventana de Citrix Receiver
Al cambiar el tamaño de la ventana de Citrix Receiver, se modifica la resolución de la pantalla. El controlador propietario de NVIDIA cambia algunos estados internos y podría requerir que las aplicaciones respondan en consecuencia. Por ejemplo, el elemento de la biblioteca WebGL lightgl.js podría generar un error que diga: ‘Rendering to this texture is not supported (incomplete frame buffer)’.