Linux Virtual Delivery Agent

Configuración y ajuste de gráficos

Este artículo proporciona orientación para la configuración y el ajuste de gráficos del VDA de Linux.

Para obtener más información, consulta Requisitos del sistema y la sección Información general sobre la instalación.

Configuración

  • Códec de vídeo para la compresión

Thinwire es la tecnología de acceso remoto a la pantalla utilizada en el VDA de Linux. Esta tecnología permite que los gráficos generados en una máquina se transmitan, normalmente a través de una red, a otra máquina para su visualización.

  • La política de gráficos Usar códec de vídeo para la compresión establece el modo de gráficos predeterminado y ofrece las siguientes opciones para diferentes casos de uso:

  • Usar cuando sea preferible. Esta configuración es la predeterminada. No se requiere ninguna configuración adicional. Garantiza que Thinwire se seleccione para todas las conexiones de Citrix® y se optimice para la escalabilidad, el ancho de banda y una calidad de imagen superior para las cargas de trabajo de escritorio típicas.
  • Para toda la pantalla. Ofrece Thinwire con H.264 o H.265 a pantalla completa para optimizar la experiencia del usuario y el ancho de banda, especialmente en casos de uso intensivo de gráficos 3D.
  • Para regiones que cambian activamente. La tecnología de visualización adaptativa de Thinwire identifica las imágenes en movimiento (vídeo, 3D en movimiento). Utiliza H.264 solo en la parte de la pantalla donde la imagen se está moviendo. El uso selectivo del códec de vídeo H.264 permite a HDX Thinwire detectar y codificar las partes de la pantalla que se actualizan con frecuencia utilizando el códec de vídeo H.264. La compresión de imágenes fijas (JPEG, RLE) y el almacenamiento en caché de mapas de bits se siguen utilizando para el resto de la pantalla, incluido el texto y las imágenes fotográficas. Los usuarios obtienen el beneficio de un menor consumo de ancho de banda y una mejor calidad para el contenido de vídeo, combinado con texto sin pérdidas o imágenes de alta calidad en otras partes. Para habilitar esta función, establece la política Usar códec de vídeo para la compresión en Usar cuando sea preferible (predeterminado) o Para regiones que cambian activamente. Para obtener más información, consulta Configuración de la política de gráficos. Para habilitar la codificación de hardware H.264 para esta función, consulta Codificación de hardware H.264.

    Se ha seleccionado Para toda la pantalla

Algunas otras configuraciones de política, incluidas las siguientes configuraciones de política de visualización, se pueden usar para ajustar el rendimiento del acceso remoto a la pantalla:

A partir de la versión 2204, el VDA de Linux admite el uso selectivo del códec de hardware H.264 para regiones que cambian activamente. Esta función descarga el consumo de compresión de vídeo de la CPU al hardware y mejora la calidad de la imagen y el número de fotogramas por segundo (FPS). Para habilitar la función, haz lo siguiente:

  1. Habilita la política Usar codificación de hardware para códec de vídeo.
    1. Habilita la política Usar códec de vídeo para la compresión y selecciona Para regiones que cambian activamente.

Permitir la compresión visualmente sin pérdidas

La política Permitir la compresión visualmente sin pérdidas permite usar la compresión visualmente sin pérdidas en lugar de la compresión verdaderamente sin pérdidas para los gráficos. La compresión visualmente sin pérdidas mejora el rendimiento con respecto a la compresión verdaderamente sin pérdidas, pero tiene una pequeña pérdida que es imperceptible a la vista. Esta configuración cambia la forma en que se utilizan los valores de la configuración Calidad visual.

La política Permitir la compresión visualmente sin pérdidas está inhabilitada de forma predeterminada. Para habilitar la compresión visualmente sin pérdidas, establece Permitir la compresión visualmente sin pérdidas en Habilitada y la política Calidad visual en Compilar sin pérdidas.

Si la política Usar códec de vídeo para la compresión está establecida en No usar códec de vídeo, la compresión visualmente sin pérdidas se aplica a la codificación de imágenes estáticas. Si la política Usar códec de vídeo para la compresión está establecida en un modo de gráficos distinto de No usar códec de vídeo, la compresión visualmente sin pérdidas se aplica a la codificación H.264.

Los siguientes clientes admiten H.264 selectivo:

  • Citrix Receiver para Windows 4.9 a 4.12
    • Citrix Receiver para Linux 13.5 a 13.10
    • Citrix Workspace™ app 1808 para Windows y versiones posteriores
    • Citrix Workspace app 1808 para Linux y versiones posteriores

Para obtener más información sobre la configuración de las políticas Calidad visual y Usar códec de vídeo para la compresión, consulta Configuración de la política de visualización y Configuración de la política de gráficos.

Compatibilidad con el códec de vídeo H.265

A partir de la versión 7.18, el VDA de Linux admite el códec de vídeo H.265 para la aceleración de hardware de gráficos y vídeos remotos.

Puedes usar esta función en:

  • Citrix Receiver para Windows 4.10 a 4.12
  • Citrix Workspace app 1808 para Windows y versiones posteriores

    • Para beneficiarte de esta función, habilítala tanto en el VDA de Linux como en tu cliente. Si la GPU de tu cliente no admite la decodificación H.265 mediante la interfaz DXVA, la configuración de la política de gráficos Decodificación H.265 se ignora y las sesiones vuelven a usar el códec de vídeo H.264. Para obtener más información, consulta Codificación de vídeo H.265.

    • Para habilitar la codificación de hardware H.265 en el VDA:

  1. Habilita la política Usar codificación de hardware para códec de vídeo.
  2. Habilita la política Optimizar para cargas de trabajo de gráficos 3D.
  3. Asegúrate de que la política Usar códec de vídeo para la compresión sea la predeterminada o esté establecida en Para toda la pantalla.
  4. Asegúrate de que la política Calidad visual NO esté establecida en Compilar sin pérdidas o Siempre sin pérdidas.

Para habilitar la codificación de hardware H.265 en tu cliente, consulta Codificación de vídeo H.265.

Compatibilidad con la codificación de software YUV444

El VDA de Linux admite la codificación de software YUV444. El esquema de codificación YUV asigna valores de brillo y color a cada píxel. En YUV, ‘Y’ representa el valor de brillo o ‘luma’, y ‘UV’ representa los valores de color o ‘croma’. Puedes usar esta función en Citrix Receiver para Windows 4.10 a 4.12 y en Citrix Workspace app 1808 para Windows y versiones posteriores.

Cada valor único de Y, U o V comprende 8 bits, o un byte, de datos. El formato de datos YUV444 transmite 24 bits por píxel. El formato de datos YUV422 comparte los valores U y V entre dos píxeles, lo que da como resultado una tasa de transmisión promedio de 16 bits por píxel. La siguiente tabla muestra una comparación intuitiva entre YUV444 y YUV420.

YUV444 YUV420
YUV444 YUV420

Para habilitar la codificación de software YUV444 en el VDA:

  1. Asegúrate de que la política Usar códec de vídeo para la compresión esté establecida en Para toda la pantalla.

  2. Asegúrate de que la directiva Calidad visual esté configurada en Siempre sin pérdidas o Compilación sin pérdidas.

Control deslizante de calidad gráfica

Hemos incluido un control deslizante de calidad gráfica en la herramienta de indicador de estado gráfico que se ejecuta en tus sesiones virtuales de Linux. El control deslizante ayuda a encontrar el equilibrio adecuado entre la calidad de imagen y la interactividad.

Para usar el control deslizante, sigue estos pasos:

  1. Habilita la directiva Indicador de estado gráfico en Citrix Studio.

    La directiva Indicador de estado gráfico

  2. Abre el Terminal y ejecuta el comando ctxslider. Aparece la interfaz de usuario del control deslizante.

    Nota:

    Si has configurado la directiva Calidad visual en Siempre sin pérdidas o Compilación sin pérdidas, la interfaz de usuario del control deslizante no se mostrará.

    Control deslizante de calidad gráfica

    Ahora están disponibles las siguientes opciones:

    • Para cambiar la calidad de imagen, mueve el control deslizante. El control deslizante admite un rango de 0 a 9.
    • Para usar la configuración definida por el sistema, selecciona Dejar que el sistema decida.
    • Para cambiar al modo sin pérdidas, selecciona Píxel perfecto.

Ajustar las tasas de bits promedio según las estimaciones de ancho de banda

Citrix mejora la codificación de hardware HDX™ 3D Pro ajustando las tasas de bits promedio según las estimaciones de ancho de banda.

Cuando se utiliza la codificación de hardware HDX 3D Pro, el VDA puede estimar intermitentemente el ancho de banda de la red y ajustar las tasas de bits de los fotogramas codificados en consecuencia. Esta nueva función proporciona un mecanismo para equilibrar la nitidez y la fluidez.

Esta función está habilitada de forma predeterminada. Para deshabilitarla, ejecuta el siguiente comando:

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

Además de usar esta función, también puedes ejecutar los siguientes comandos para ajustar la nitidez y la fluidez. Los parámetros AverageBitRatePercent y MaxBitRatePercent establecen el porcentaje de uso del ancho de banda. Cuanto mayores sean los valores que establezcas, más nítidos serán los gráficos y menor la fluidez que obtendrás. El rango de configuración recomendado es de 50 a 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-->

En el ajuste de la tasa de bits promedio, cuando la pantalla permanece inmóvil, el fotograma más reciente permanece en un estado de baja calidad porque no se envían nuevos fotogramas. El soporte de nitidez puede solucionar este problema reconfigurando y enviando inmediatamente el fotograma más reciente con la máxima calidad.

Para obtener una lista completa de las directivas compatibles con Linux VDA Thinwire, consulta Lista de directivas compatibles.

Para obtener información sobre la configuración de la compatibilidad con varios monitores en el VDA de Linux, consulta CTX220128.

Procesamiento paralelo

Thinwire puede mejorar el número de fotogramas por segundo (FPS) al paralelizar ciertas tareas, con la sobrecarga de un consumo de CPU general ligeramente superior. Esta función está deshabilitada de forma predeterminada. Para habilitar la función, ejecuta el siguiente comando en tu VDA:

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

Solución de problemas

Comprobar qué modo gráfico está en uso

Ejecuta el siguiente comando para comprobar qué modo gráfico está en uso (0 significa TW+. 1 significa códec de vídeo a pantalla completa):

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

El resultado es similar a:

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

Comprobar si H.264 está en uso

Ejecuta el siguiente comando para comprobar si H.264 está en uso (0 significa que no está en uso. 1 significa que está en uso):

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

El resultado es similar a:

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

Comprobar si H.265 está en uso

Ejecuta el siguiente comando para comprobar si H.265 a pantalla completa está en uso (0 significa que no está en uso. 1 significa que está en uso):

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

El resultado es similar a:

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

Comprobar qué esquema de codificación YUV está en uso

Ejecuta el siguiente comando para comprobar qué esquema de codificación YUV está en uso (0 significa YUV420. 1 significa YUV422. 2 significa YUV444):

Nota: El valor de YUVFormat solo es significativo cuando se utiliza un códec de vídeo.

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

El resultado es similar a:

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

Comprobar si la codificación por software YUV444 está en uso

Ejecuta el siguiente comando para comprobar si la codificación por software YUV444 está en uso:

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

Cuando YUV444 está en uso, el resultado es similar a:

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

Comprobar si la codificación por hardware está en uso 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 por 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-->

Verificar que el controlador de gráficos NVIDIA GRID está instalado correctamente

Para verificar 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 observas problemas de redibujado en pantallas que no sean 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 Citrix Hypervisor™ muestra la pantalla de la sesión de escritorio ICA

Solución alternativa: Deshabilita la consola VGA local de la VM ejecutando los siguientes comandos:

Para Citrix Hypervisor 8.1 y versiones posteriores:

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

Para Citrix Hypervisor anterior a 8.1:

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

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 la aplicación Citrix Workspace

Al cambiar el tamaño de la ventana de la aplicación Citrix Workspace, 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)’.

Configuración y ajuste de gráficos