Agente de entrega virtual de Linux 2507 LTSR

Configuración y ajuste de gráficos

Este artículo describe la configuración y el ajuste de gráficos de Linux VDA.

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

Configuración

Optimizar para cargas de trabajo de gráficos 3D

  • Esta configuración configura los valores predeterminados adecuados que mejor se adaptan a las cargas de trabajo con uso intensivo de gráficos. Habilita esta configuración para los usuarios cuya carga de trabajo se centra en aplicaciones con uso intensivo de gráficos. Aplica esta directiva solo en los casos en que una GPU esté disponible para la sesión. Cualquier otra configuración que anule explícitamente la configuración predeterminada establecida por esta directiva tiene prioridad.

  • De forma predeterminada, Optimizar para cargas de trabajo de gráficos 3D está deshabilitada.

Códec de vídeo para compresión

  • Thinwire es la tecnología de visualización remota que se usa en Linux VDA. La 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 directiva de gráficos Usar códec de vídeo para compresión establece el modo de gráficos predeterminado y ofrece las siguientes opciones para diferentes casos de uso:

  • Usar cuando se prefiera. 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 con uso intensivo de gráficos 3D. La marca de agua de sesión es compatible cuando se selecciona Para toda la pantalla, o cuando se selecciona Usar cuando se prefiera y se habilita Optimizar para cargas de trabajo 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). Usa AV1, H.265 o H.264 solo en la parte de la pantalla donde la imagen se está moviendo. El uso selectivo del códec de vídeo AV1, H.265 o H.264 permite a HDX Thinwire detectar y codificar las partes de la pantalla que se actualizan con frecuencia. La compresión de imágenes fijas (JPEG, RLE) y el almacenamiento en caché de mapas de bits se siguen usando 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 otros lugares. El uso selectivo de AV1 y H.265 no es compatible cuando la directiva Calidad visual está establecida en Siempre sin pérdidas o Compilación sin pérdidas.

    Se selecciona Para toda la pantalla

Algunas otras configuraciones de directiva, incluidas las siguientes configuraciones de directiva de visualización, se pueden usar para ajustar el rendimiento de la visualización remota:

  • Profundidad de color preferida para gráficos simples
  • Velocidad de fotogramas de destino
  • Calidad visual

  • Codificación de hardware AV1/H.265/H.264

  • La directiva Usar codificación de hardware para códec de vídeo permite el uso de la aceleración de hardware de GPU, si está disponible, para comprimir elementos de pantalla con el códec de vídeo. La aceleración de hardware de GPU optimiza la utilización de los recursos de hardware y mejora en gran medida el rendimiento de los fotogramas por segundo (FPS).

  • Usar cuando se prefiera
  • Para toda la pantalla
    • Para regiones que cambian activamente

    • Para habilitar la compresión de vídeo por hardware, completa los siguientes pasos:

  1. Establece la directiva Usar codificación de hardware para códec de vídeo en Habilitada.
  2. Establece Usar códec de vídeo para compresión en Usar cuando se prefiera, Para toda la pantalla o Para regiones que cambian activamente. Asegúrate de que no esté establecida en No usar códec de vídeo.

    • Para que sea utilizable, el códec de vídeo AV1 o H.265 debe ser compatible y estar habilitado tanto en el VDA como en la aplicación Citrix Workspace. AV1 tiene preferencia sobre H.265 y H.264 durante la negociación del códec. Cuando AV1 no es compatible, se negocia H.265. Si AV1 y H.265 no son compatibles, las sesiones recurren al uso del códec de vídeo H.264. Si la GPU de hardware no está disponible, el VDA recurre a la codificación basada en CPU usando el códec de vídeo por software.

Requisitos para la codificación de hardware AV1

VDA
Cliente
  • Aplicación Citrix Workspace™ 2305 para Windows o posterior
  • GPU de cliente que admita la decodificación AV1:
    • NVIDIA Ampere o posterior
    • Intel 11.ª generación / Arc o posterior
    • AMD Radeon RX 6000 / Radeon Pro W6000 series (RDNA2) o posterior

Requisitos para la codificación de hardware H.265

Cliente
-  Citrix Receiver para Windows 4.10 a 4.12
  • Aplicación Citrix Workspace 1808 para Windows y posterior

Compresión sin pérdidas H.265/H.264

La compresión sin pérdidas H.265/H.264 está disponible para la aceleración de hardware HDX 3D PRO mediante GPU NVIDIA. La compresión sin pérdidas H.265 requiere la aplicación Citrix Workspace 2305 para Windows y posterior. La compresión sin pérdidas H.264 requiere los siguientes clientes:

  • Aplicación Citrix Workspace 2303 para Windows y posterior
  • Aplicación Citrix Workspace 2301 para Mac y posterior con el chip Apple M1

Para habilitar la compresión sin pérdidas H.265/H.264, completa los siguientes pasos:

  1. Establece la directiva Usar codificación de hardware para códec de vídeo en Habilitada.
  2. Establece la directiva Usar códec de vídeo para compresión en Para toda la pantalla.

  3. Establece la directiva Calidad visual en Siempre sin pérdidas o Compilación sin pérdidas.

Permitir compresión visualmente sin pérdidas

La directiva Permitir 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 pérdida menor que es imperceptible a la vista. Esta configuración cambia la forma en que se usan los valores de la configuración Calidad visual.

La directiva Permitir compresión visualmente sin pérdidas está deshabilitada de forma predeterminada. Para habilitar la compresión visualmente sin pérdidas, establece Permitir compresión visualmente sin pérdidas en Habilitada y la directiva Calidad visual en Compilación sin pérdidas.

Si la directiva Usar códec de vídeo para 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 directiva Usar códec de vídeo para 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.

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

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 te ayuda a encontrar el equilibrio adecuado entre la calidad de imagen y la interactividad.

Para usar el control deslizante, completa los siguientes pasos:

  1. Habilita la política Indicador de estado gráfico en Citrix Studio.

    La política Indicador de estado gráfico

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

    Nota:

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

    • Puedes iniciar la interfaz de usuario del control deslizante tanto desde el Terminal como desde la bandeja del sistema.

    Control deslizante de calidad gráfica

    Ahora están disponibles las siguientes opciones:

    • Para cambiar la calidad de la 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 la codificación de hardware HDX 3D Pro está en uso, 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 será la fluidez. 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 se mantiene estática, el fotograma más reciente permanece en un estado de baja calidad porque no se envían nuevos fotogramas. La compatibilidad con el enfoque 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 políticas compatibles con Thinwire de Linux VDA, consulta Lista de compatibilidad de políticas.

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

Procesamiento paralelo

Thinwire puede mejorar el número de fotogramas por segundo (FPS) al paralelizar ciertas tareas, con el inconveniente de un consumo general de CPU ligeramente mayor. 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 de pantalla completa):

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

El resultado se asemeja a:

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

Verificar que AV1 está en uso

Nota:

Para verificar qué códec de vídeo está en uso para la sesión actual, ejecuta un comando de los que se proporcionan a continuación o comprueba el estado de los gráficos a través de la bandeja del sistema.

Ejecuta el siguiente comando para verificar que AV1 está en uso (0 significa que no está en uso. 1 significa que está en uso):

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

Por ejemplo, el resultado puede ser similar a:

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

Verificar que H.265 está en uso

Ejecuta el siguiente comando para verificar que H.265 de 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-->

Por ejemplo, el resultado puede ser similar a:

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

Verificar que H.264 está en uso

Ejecuta el siguiente comando para verificar que 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-->

Por ejemplo, el resultado puede ser similar a:

create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "H264" -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-->

Por ejemplo, el resultado puede ser similar a:

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

Verifica que la codificación de software YUV444 esté en uso

Ejecuta el siguiente comando para verificar que la codificación de 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

Verifica que HDX 3D Pro esté habilitado

Ejecuta los siguientes comandos para verificar que HDX 3D Pro esté habilitado:

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

Cuando HDX 3D Pro está habilitado, el resultado es similar a:

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

Para verificar que las bibliotecas NVIDIA necesarias estén cargadas para HDX 3D Pro, ejecuta el comando nvidia-smi en el VDA de Linux. El resultado es similar a:

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

Verifica que la codificación de 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-->

Cuando 3D Pro está en uso, el resultado es similar a:

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

Verifica 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. El resultado es similar 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 de varios monitores en HDX 3D Pro

Si observas problemas de redibujado en pantallas que no sean el monitor principal, verifica que la licencia de NVIDIA GRID esté disponible.

Comprueba 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 (anteriormente Citrix Hypervisor™) 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:

[root@xenserver® ~]# xe vgpu-param-set uuid=vgpu-uuid 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

Cambiar el tamaño de la ventana de la aplicación Citrix Workspace 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 indique que Rendering to this texture is not supported (incomplete frame buffer).

Configuración y ajuste de gráficos