Non-GRID 3D graphics
The Linux VDA supports both NVIDIA GRID 3D cards and non-GRID 3D cards.
To use the non-GRID 3D graphics feature, you must:
- Install XDamage as a prerequisite. Typically, XDamage exists as an extension of XServer.
Ywhen installing the Linux VDA. For information about environment variables, see Step 7: Set up the runtime environment to complete the installation.
Modify Xorg configuration files
For NVIDIA graphics cards
If your 3D card driver is NVIDIA, the configuration files are installed and set automatically.
For other types of 3D cards
If your 3D card driver is NOT NVIDIA, you must modify the four template configuration files installed under
Using ctx-driver_name-1.conf as an example, do the following to modify the template configuration files:
Replace driver_name with your actual driver name.
For example, if your driver name is
intel, you can change the configuration file name to
Add the video driver information.
Each template configuration file contains a section named “Device,” which is commented out. This section describes the video driver information. Enable this section before adding your video driver information. To enable this section:
See the 3D card guide provided by the manufacturer for configuration information. A native configuration file can be generated. Verify that your 3D card can work in a local environment with the native configuration file when you are not running a Linux VDA session.
Copy the “Device” section of the native configuration file to ctx-driver_name-1.conf.
Run the following command to set the registry key so that the Linux VDA can recognize the configuration file name set in Step 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-->
Enable non-GRID 3D graphics
The non-GRID 3D graphics feature is disabled by default. You can run the following command to enable it by setting the XDamageEnabled value to 1.
/opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Citrix\XDamage" -t "REG_DWORD" -v "XDamageEnabled" -d "0x00000001" --force <!--NeedCopy-->
Monitor blanking for Remote PC Access VDAs
The Linux VDA supports physical monitor blanking for Remote PC Access VDAs that use non-GRID 3D cards. This enhancement offloads graphics display to Extensible Virtual Display Interface (EVDI) virtual monitors.
The maximum number of EVDI virtual monitors varies for different distributions.
Monitor blanking works for Ubuntu 20.04, Debian 11.3, and Debian 10.9 VDAs. To use monitor blanking, complete the following two steps:
evdi-dkmspackage based on your Linux distribution:
sudo apt install evdi-dkms <!--NeedCopy-->
Enable graphics display offloading to EVDI:
/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "Evdi" -d "0x00000001" --force <!--NeedCopy-->
If you are using an Intel graphics card, disable the display manager. Otherwise, the Intel card is occupied by the display manager and not available for Citrix remote sessions.
sudo systemctl disable --now gdm <!--NeedCopy-->
No or garbled graphic output
If you can run 3D applications locally and all configurations are correct, missing or garbled graphic output is the result of a bug. Use /opt/Citrix/VDA/bing/setlog and set GFX_X11 to verbose to collect the trace information for debugging.
Hardware encoding does not work
This feature supports only software encoding.