グラフィックの構成

最終公開日 : Nov 13, 2026
この記事では、Linux VDAのグラフィック構成と微調整に関するガイダンスを提供します。
詳細については、システム要件およびインストール概要セクションを参照してください。

構成

Thinwireは、Linux VDAで使用されるディスプレイリモート処理テクノロジーです。このテクノロジーにより、あるマシンで生成されたグラフィックを、通常はネットワーク経由で別のマシンに送信して表示できます。
The 圧縮にビデオコーデックを使用 グラフィックポリシーは、デフォルトのグラフィックモードを設定し、さまざまなユースケースに対応する以下のオプションを提供します。
  • 推奨される場合に使用。この設定はデフォルトです。追加の構成は必要ありません。この設定を維持することで、すべてのCitrix®接続でThinwireが選択され、一般的なデスクトップワークロードのスケーラビリティ、帯域幅、および優れた画質のために最適化されます。
  • 画面全体の場合。ThinwireをフルスクリーンH.264またはH.265で提供し、特に3Dグラフィックを多用する場合に、ユーザーエクスペリエンスと帯域幅の向上を最適化します。
  • アクティブに変更される領域の場合。Thinwireのアダプティブディスプレイテクノロジーは、動いている画像(ビデオ、移動中の3D)を識別し、画像が動いている画面の部分でのみH.264を使用します。*H.264ビデオコーデックの選択的な使用*により、HDX Thinwireは、ビデオコンテンツなど、H.264ビデオコーデックを使用して頻繁に更新される画面の一部を検出してエンコードできます。静止画圧縮(JPEG、RLE)とビットマップキャッシュは、テキストや写真画像を含む画面の残りの部分で引き続き使用されます。ユーザーは、ビデオコンテンツの低帯域幅と高品質の恩恵を受け、他の場所ではロスレステキストまたは高品質の画像と組み合わせることができます。この機能を有効にするには、ポリシー設定の圧縮にビデオコーデックを使用を推奨される場合に使用(デフォルト)またはアクティブに変更される領域の場合に変更します。詳細については、グラフィックポリシー設定を参照してください。
画面全体の場合の画像
ディスプレイリモート処理のパフォーマンスを微調整するために、以下の視覚表示ポリシー設定を含む他のいくつかのポリシー設定を使用できます。

ThinwireのBuild to LosslessにH.264を使用する

デフォルトでは、視覚品質ポリシー設定のBuild to Losslessの優先設定は、動画の場合、JPEGではなくH.264になりました。
H.264エンコードは、優れた画質を提供します。ビデオコーデックを使用して圧縮ポリシーは、その設定を制御し、デフォルトは可能な場合に使用です。ロスレスで構築でJPEGを使用するように強制するには、ビデオコーデックを使用して圧縮ポリシーをビデオコーデックを使用しないに設定します。クライアントが選択的H.264をサポートしていない場合、ロスレスで構築はポリシー設定に関係なくJPEGにフォールバックします。Citrix Receiver for Windows 4.9~4.12、Citrix Receiver for Linux 13.5~13.10、Citrix Workspaceアプリ1808 for Windows以降、およびCitrix Workspaceアプリ1808 for Linux以降は、選択的H.264をサポートしています。視覚的品質およびビデオコーデックを使用して圧縮ポリシー設定の詳細については、「視覚表示ポリシー設定」および「グラフィックポリシー設定」を参照してください。

H.265ビデオコーデックのサポート

7.18リリース以降、Linux VDAはリモートグラフィックとビデオのハードウェアアクセラレーションのためにH.265ビデオコーデックをサポートしています。この機能は、Citrix Receiver for Windows 4.10~4.12、およびCitrix Workspaceアプリ1808 for Windows以降で使用できます。この機能を利用するには、Linux VDAとクライアントの両方で有効にします。クライアントのGPUがDXVAインターフェイスを使用したH.265デコードをサポートしていない場合、グラフィックのH.265デコードポリシー設定は無視され、セッションはH.264ビデオコーデックの使用にフォールバックします。詳細については、「H.265ビデオエンコード」を参照してください。
VDAでH.265ハードウェアエンコードを有効にするには:
  1. ビデオコーデックのハードウェアエンコードを使用ポリシーを有効にします。
  2. 3Dグラフィックワークロード用に最適化ポリシーを有効にします。
  3. ビデオコーデックを使用して圧縮ポリシーがデフォルトであるか、画面全体に設定されていることを確認します。
  4. 視覚的品質ポリシーが、ロスレスで構築または常にロスレスに設定されていないことを確認します。
クライアントでH.265ハードウェアエンコードを有効にするには、「H.265ビデオエンコード」を参照してください。

YUV444ソフトウェアエンコードのサポート

Linux VDAはYUV444ソフトウェアエンコードをサポートしています。YUVエンコードスキームは、各ピクセルに輝度と色の両方の値を割り当てます。YUVでは、「Y」は輝度、つまり「ルマ」値を表し、「UV」は色、つまり「クロマ」値を表します。このLinux VDAの機能は、Citrix Receiver for Windows 4.10~4.12、およびCitrix Workspaceアプリ1808 for Windows以降で使用できます。
各Y、U、Vの固有値は、8ビット(1バイト)のデータで構成されます。YUV444データ形式は、ピクセルあたり24ビットを送信します。YUV422データ形式は、2つのピクセル間でUおよびV値を共有するため、ピクセルあたりの平均伝送速度は16ビットになります。次の表は、YUV444とYUV420の直感的な比較を示しています。
YUV444 YUV420
yuv444の画像 「yuv420の画像」(/en-us/linux-virtual-delivery-agent/2104/media/yuv420.png)
VDAでYUV444ソフトウェアエンコーディングを有効にするには:
  1. 「圧縮にビデオコーデックを使用」ポリシーが「画面全体」に設定されていることを確認します。
  2. 「視覚品質」ポリシーが「常にロスレス」または「ロスレスにビルド」に設定されていることを確認します。

帯域幅の見積もりに基づいて平均ビットレートを調整する

Citrixは、帯域幅の見積もりに基づいて平均ビットレートを調整することで、HDX™ 3D Proハードウェアエンコーディングを強化します。
HDX 3D Proハードウェアエンコーディングが使用されている場合、VDAはネットワークの帯域幅を断続的に推定し、帯域幅の見積もりに基づいてエンコードされたフレームのビットレートを調整できます。この新機能は、シャープネスと流暢さのバランスを取るメカニズムを提供します。
この機能はデフォルトで有効になっています。無効にするには、次のコマンドを実行します。
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "DisableReconfigureEncoder" -d "0x00000001" --force
この機能を使用するだけでなく、シャープネスと流暢さの間で調整するために次のコマンドを実行することもできます。「AverageBitRatePercent」と「MaxBitRatePercent」パラメーターは、帯域幅使用率のパーセンテージを設定します。設定値が高いほど、グラフィックはシャープになり、流暢さは低下します。推奨される設定範囲は50~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
平均ビットレート調整では、画面が静止している場合、新しいフレームが送信されないため、最新のフレームは低品質の状態を維持します。シャープ化サポートは、最新のフレームを最高品質で再構成してすぐに送信することで、この問題に対処できます。
Linux VDA Thinwireでサポートされているポリシーの完全なリストについては、「ポリシーサポートリスト」を参照してください。
Linux VDAでのマルチモニターサポートの構成については、「CTX220128」を参照してください。

トラブルシューティング

使用中のグラフィックモードを確認する

使用中のグラフィックモードを確認するには、次のコマンドを実行します(0はTW+、1は全画面ビデオコーデックを意味します)。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep GraphicsMode
結果は次のようになります。
create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "GraphicsMode" -d "0x00000000" --force

H.264 が使用中かどうかを確認する

H.264 が使用中かどうかを確認するには、次のコマンドを実行します (0 は使用中でないことを意味し、1 は使用中であることを意味します)。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep H264
結果は次のようになります。
create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "H264" -d "0x00000000" --force

H.265 が使用中かどうかを確認する

全画面 H.265 が使用中かどうかを確認するには、次のコマンドを実行します (0 は使用中でないことを意味し、1 は使用中であることを意味します)。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep H265
結果は次のようになります。
create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "H265" -d "0x00000000" --force

どの YUV エンコードスキームが使用中かを確認する

どの YUV エンコードスキームが使用中かを確認するには、次のコマンドを実行します (0 は YUV420 を意味します。1 は YUV422 を意味します。2 は YUV444 を意味します)。
注: YUVFormat の値は、ビデオコーデックが使用されている場合にのみ意味があります。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep YUVFormat
結果は次のようになります。
create -k "HKLM\Software\Citrix\Ica\Session\4\Graphics" -t "REG_DWORD" -v "YUVFormat" -d "0x00000000" --force

YUV444 ソフトウェアエンコードが使用中かどうかを確認する

YUV444 ソフトウェアエンコードが使用中かどうかを確認するには、次のコマンドを実行します。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep Graphics
YUV444 が使用中の場合、結果は次のようになります。
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

3D Pro でハードウェアエンコードが使用中かどうかを確認する

次のコマンドを実行します (0 は使用されていません。1 は使用中です)。
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep HardwareEncoding
結果は次のようになります。
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 |
+-----------------------------------------------------------------------------+

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                                                 |
+-----------------------------------------------------------------------------+
カードの正しい構成を設定します。
etc/X11/ctx-nvidia.sh

HDX 3D Pro マルチモニターの再描画に関する問題

プライマリモニター以外の画面で再描画の問題が発生している場合は、NVIDIA GRID ライセンスが利用可能であることを確認してください。

Xorg エラーログを確認する

Xorg のログファイルは、/var/log/ フォルダーに Xorg.{DISPLAY}.log のような名前で保存されています。

既知の問題と制限事項

vGPU の場合、Citrix Hypervisor™ のローカルコンソールに ICA デスクトップセッション画面が表示される

回避策: 次のコマンドを実行して、VM のローカル VGA コンソールを無効にします。
xe vm-param-set uuid=<vm-uuid> platform:vgpu_extra_args="disable_vnc=1"

NVIDIA K2 グラフィックカードは、パススルーモードでの YUV444 ハードウェアエンコードをサポートしていません

ポリシー設定で Build to Lossless を有効にすると、NVIDIA K2 グラフィックカードを使用してアプリ/デスクトップセッションを起動したときに、黒または灰色の画面が表示されます。この問題は、NVIDIA K2 グラフィックカードがパススルーモードでの YUV444 ハードウェアエンコードをサポートしていないために発生します。詳細については、「Video Encode and Decode GPU Support Matrix」を参照してください。

ログオン時に Gnome 3 デスクトップのポップアップが遅い

これはGnome 3デスクトップセッション起動の制限事項です。

シトリックス ワークスペース アプリのウィンドウのサイズを変更すると、一部のオープンジーエルおよびウェブジーエル アプリケーションが適切にレンダリングされない

Citrix Workspaceアプリのウィンドウのサイズを変更すると、画面解像度が変更されます。NVIDIA独自のドライバーは一部の内部状態を変更し、アプリケーションがそれに応じて応答することを要求する場合があります。たとえば、WebGLライブラリ要素のlightgl.jsは、「Rendering to this texture is not supported (incomplete frame buffer)」というエラーを発生させる可能性があります。