Linux Virtual Delivery Agent

GPU no virtualizadas

En la documentación de Linux VDA, las GPU no virtualizadas hacen referencia a:

  • GPU utilizadas en casos de acceso con Remote PC
  • GPU transferidas desde un hipervisor

Este artículo proporciona información sobre cómo habilitar HDX 3D Pro para GPU no virtualizadas.

Requisitos previos

  • Habilite HDX 3D Pro. Para ello, establezca CTX_XDL_HDX_3D_PRO en Y al instalar Linux VDA. Para obtener información sobre las variables de entorno, consulte Paso 8: Configure el entorno en tiempo de ejecución para completar la instalación.
  • En el caso de GPU compatibles con NVIDIA Linux Capture SDK, la aceleración de hardware se habilita de forma predeterminada después de habilitar HDX 3D Pro. No se requiere ninguna configuración adicional.
  • Para las GPU no compatibles con NVIDIA Linux Capture SDK, instale XDamage. Por ejemplo, puede ejecutar sudo apt-get install -y libxdamage1 para instalar XDamage en Ubuntu 20.04. Por lo general, XDamage existe como una extensión de XServer.

Configuración

Modificar los archivos de configuración de Xorg

Para GPU no virtualizadas de NVIDIA

Los archivos de configuración se instalan y se configuran automáticamente.

Para otras GPU

Debe modificar los cuatro archivos de configuración de las plantillas que se instalaron en /etc/X11/:

  • ctx-driver_name-1.conf
  • ctx-driver_name-2.conf
  • ctx-driver_name-3.conf
  • ctx-driver_name-4.conf

Con ctx-driver_name-1.conf como ejemplo, siga los pasos a continuación para modificar los archivos de configuración de plantillas:

  1. Reemplace driver_name por el nombre del controlador real.

    Por ejemplo, si el nombre del controlador es intel, puede cambiar el nombre del archivo de configuración a ctx-intel-1.conf.

  2. Agregue la información del controlador de vídeo.

    Cada archivo de configuración de plantilla contiene una sección llamada “Device”, que está excluida de la ejecución mediante marcas de comentario. Esta sección describe la información del controlador de vídeo. Habilite esta sección antes de agregar la información del controlador de vídeo. Para habilitar esta sección:

    1. Consulte la guía proporcionada por el fabricante de GPU para obtener información sobre la configuración. Se puede generar un archivo de configuración nativo. Compruebe que la GPU pueda funcionar en un entorno local con el archivo de configuración nativo.

    2. Copie la sección “Device” del archivo de configuración nativo a ctx-driver_name-1.conf.

  3. Ejecute el siguiente comando para establecer la clave de Registro y permitir que Linux VDA reconozca el nombre del archivo de configuración modificado en el paso 1.

    /opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Citrix\XDamage" -t "REG_SZ" -v "DriverName" -d "intel" --force
    <!--NeedCopy-->
    

Habilitar XDamage

Si utiliza una GPU que no aparece en la sección de hardware compatible de las notas de publicación de NVIDIA Linux Capture SDK habilite XDamage mediante:

/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Citrix\XDamage" -t "REG_DWORD" -v "XDamageEnabled" -d "0x00000001" --force
<!--NeedCopy-->

Puesta en blanco del monitor para VDA de acceso con Remote PC

Linux VDA admite la puesta en blanco del monitor físico para los VDA de acceso con Remote PC que utilizan GPU no virtualizadas.

Entre las distribuciones de Linux totalmente probadas que admiten esta función se incluyen Ubuntu 20.04 y Debian 11.3.

Esta función está inhabilitada de forma predeterminada. Para habilitarla, complete estos dos pasos:

  1. Instale el paquete evdi-dkms correspondiente a su distribución Linux:

    sudo apt install evdi-dkms
    <!--NeedCopy-->
    
  2. Habilite la transferencia de la presentación de gráficos a EVDI:

    /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "Evdi" -d "0x00000001" --force
    <!--NeedCopy-->
    
  3. Si utiliza una GPU de Intel, inhabilite el administrador de pantallas. De lo contrario, la GPU de Intel está ocupada con el administrador de pantallas y no está disponible para las sesiones remotas de Citrix.

    sudo systemctl disable --now gdm
    <!--NeedCopy-->
    

Solución de problemas

No hay salida gráfica, o esta no se descifró correctamente

Si se pueden ejecutar aplicaciones 3D localmente y todas las configuraciones son correctas, cuando no hay ninguna salida gráfica o ésta es ilegible, es posible que sea resultado de un fallo. Use /opt/Citrix/VDA/bin/setlog y establezca GFX_X11 con el valor “verbose” para recopilar la información de seguimiento para la depuración.

La codificación por hardware no funciona

Si usa Xdamage, solo se admite la codificación por software.

GPU no virtualizadas