配置图形

本文提供 Linux VDA 图形配置和微调指南。

有关详细信息,请参阅系统要求安装概述部分。

配置参数

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Citrix\Thinwire 下有多个与图形相关的配置参数,您可以使用 ctxreg 实用程序进行调整。

如何启用 Thinwire Plus

Thinwire Plus 默认启用,适用于标准 VDA 和 3D Pro。

如何启用 H.264

除了操作系统要求外,H.264 对 Citrix Workspace 应用程序(以前称为 Citrix Receiver)版本也有最低要求。如果客户端不满足要求,则会回退到 Thinwire Plus。

操作系统 H.264 的最低要求
Windows 3.4 或更高版本
Mac OS X 11.8 或更高版本
Linux 13.0 或更高版本
Android 3.5
iOS 5.9
Chrome OS 1.4

Citrix Workspace 应用程序的最新功能矩阵可在 https://docs.citrix.com/en-us/citrix-workspace-app/citrix-workspace-app-feature-matrix.html 获取。

运行以下命令以在 VDA 上通告 H.264 编码:

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

如何在 HDX™ 3D Pro 中启用硬件编码

对于 HDX 3D Pro,AdvertiseH264 设置仅启用软件 H.264 编码。

  • 运行以下命令以启用硬件编码:
sudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "HardwareEncoding" -d "0x00000001" --force
<!--NeedCopy-->
  • 注意:

    • 如果您收到 ctxreg command can't be found 错误,请使用带有完整路径的 ctxreg 命令。例如,使用 sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" –force 而不是 sudo ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "AdvertiseH264" -d "0x00000001" –force

如何为低带宽微调 Thinwire Plus

-  MaxColorDepth

```
Default 0x20, type DWORD
<!--NeedCopy--> ```

此选项指定通过 Thinwire 协议传输到客户端的图形的颜色深度。

为节省带宽,请将其设置为 0x10(表示简单图形的首选颜色深度)或 0x8(实验性低带宽模式)。

-  Quality

视觉质量

```
Default: 0x1(medium), type: DWORD, valid values: 0x0(low), 0x1(medium), 0x2(high), 0x3(build to lossless), 0x4 always lossless.
<!--NeedCopy--> ```

为节省带宽,请将 Quality 设置为 0x0(低)。
  • 更多参数

    • TargetFPS

      目标帧率

      Default: 0x1e (30), Type: DWORD
      <!--NeedCopy-->
      
    • MinFPS

      目标最小帧率

       Default: 0xa (10), Type: DWORD
       <!--NeedCopy-->
      
    • MaxScreenNum

      客户端可拥有的最大显示器数量

       Default: 0x2, Type: DWORD
       <!--NeedCopy-->
      

      对于标准 VDA,最大值可设置为 10。对于 3D Pro,允许的最大值为 4。

故障排除

检查正在使用的编码

运行以下命令以检查是否正在使用 H.264 编码(1 表示 H.264;0 表示 TW+):

sudo ctxreg dump | grep H264
<!--NeedCopy-->

结果类似于:

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

检查 3D Pro 是否正在使用硬件编码

运行以下命令(0 表示未使用;1 表示正在使用):

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

结果类似于:

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

另一种方法是使用 nvidia-smi 命令。如果正在使用硬件编码,输出类似于:

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

验证 NVIDIA GRID 图形驱动程序是否已正确安装

要验证 NVIDIA GRID 图形驱动程序是否已正确安装,请运行 nvidia-smi。结果类似于:

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

为显卡设置正确的配置:

etc/X11/ctx-nvidia.sh

HDX 3D Pro 多显示器重绘问题

如果您在主显示器以外的屏幕上看到重绘问题,请检查 NVIDIA GRID 许可证是否可用。

检查 Xorg 错误日志

Xorg 的日志文件名为 /var/log/ 文件夹中的 Xorg.{DISPLAY}.log

已知问题和限制

对于 vGPU,XenServer® 本地控制台显示 ICA 桌面会话屏幕

解决方法:通过运行以下命令禁用 VM 的本地 VGA 控制台:

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

NVENC API 在 8Q 以外的 vGPU 配置文件中不受支持

NVIDIA Tesla M60 显卡除 8Q 以外的 vGPU 配置文件不支持 cuda,因此 NVENC API 和 Citrix® 3D Pro 硬件编码不可用。

NVIDIA K2 显卡在直通模式下不支持 YUV444 硬件编码

这是 NVIDIA K2 显卡的限制。

Gnome 3 桌面登录时弹出窗口缓慢

这是 Gnome 3 桌面会话启动的限制。

调整 Citrix Receiver 窗口大小时,某些 OpenGL/WebGL 应用程序渲染不佳

调整 Citrix Receiver 窗口大小会更改屏幕分辨率。NVIDIA 专有驱动程序会更改一些内部状态,可能需要应用程序做出相应响应。例如,WebGL 库元素 lightgl.js 可能会报错,提示“Rendering to this texture is not supported (incomplete frame buffer)”。

配置图形