リナックス バーチャル デリバリー エージェント

非仮想化GPU

Linux VDAドキュメントでは、非仮想化GPUは以下を指します。

  • リモートPCアクセスシナリオで使用されるGPU
  • ハイパーバイザーからパススルーされたGPU

この記事では、非仮想化GPUのサポートに関する情報を提供します。

NVIDIA Capture SDK for Linuxをサポートする機能が搭載されているNVIDIA GPUに対してHDX™ 3D Proの機能を有効にする

NVIDIA Capture SDK for LinuxをサポートするNVIDIA GPUの場合、Linux VDAのインストール時にCTX_XDL_HDX_3D_PROYに設定するだけで、HDX 3D Proを有効にできます。追加の設定は不要です。HDX 3D Proを有効にすると、ハードウェアアクセラレーションはデフォルトで有効になります。

Compatible with NVIDIA GPUs that don’t support the NVIDIA Capture SDK for Linux and GPUs from other manufacturers such as AMD and Intel

注:

このシナリオでは、ソフトウェアエンコーディングのみがサポートされます。

ステップ1: Linux VDAのインストール時にCTX_XDL_HDX_3D_PROをYに設定する

環境変数については、「ステップ8: 簡単インストールを実行して環境とVDAを構成し、インストールを完了する」を参照してください。

ステップ2: Xdamageをインストールする

例えば、Ubuntu 20.04にXDamageをインストールするには、sudo apt-get install -y libxdamage1を実行できます。通常、XDamageはXServerの拡張機能として存在します。

ステップ3: 次のコマンドを実行してXDamageを有効にする

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

ステップ 4: Xorg 設定ファイルを変更する

/etc/X11 の下に、次の4つのテンプレート設定ファイルがあります。接続されているモニターの数に基づいて、名前に対応する番号が含まれるテンプレート設定ファイルのいずれかを変更します。たとえば、モニターが1台しか接続されていない場合は、名前に番号1が含まれるテンプレート設定ファイル、つまりctx-driver_name-1.confを変更します。モニターが2台接続されている場合は、名前に番号2が含まれるテンプレート設定ファイル、つまりctx-driver_name-2.confを変更します。

  • ctx-driver_name-1.conf
  • ctx-ドライバー名-2.conf
  • ctx-ドライバー名-3.conf
  • ctx-ドライバー_ネーム-4.conf

ctx-driver_name-1.conf を例として、テンプレート設定ファイルを変更するには、次の手順を実行します。

  1. driver_name を実際のドライバー名に置き換えます。

    たとえば、ドライバー名が intel の場合、設定ファイル名を ctx-intel-1.conf に変更できます。

  2. ビデオドライバー情報を追加します。

    各テンプレート設定ファイルには、「Device」という名前のセクションが含まれており、コメントアウトされています。このセクションでは、ビデオドライバー情報について説明します。ビデオドライバー情報を追加する前に、このセクションを有効にします。このセクションを有効にするには:

    1. 設定情報については、GPUメーカーが提供するガイドを参照してください。ネイティブ設定ファイルを生成できます。ネイティブ設定ファイルを使用して、ローカル環境でGPUが動作することを確認します。

    2. ネイティブ設定ファイルの「Device」セクションを ctx-driver_name-1.conf にコピーします。

  3. 次のコマンドを実行してレジストリキーを設定し、Linux VDAがステップ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-->
    

リモートPCアクセスVDAのモニターブランキング

Linux VDAは、非仮想化GPUを使用するRemote PC Access VDA向けに、物理モニターのブランキングをサポートします。

この機能をサポートする完全にテスト済みのLinuxディストリビューションには、Ubuntu 20.04およびDebian 11が含まれます。

この機能はデフォルトで無効になっています。有効にするには、次の2つの手順を完了してください。

  1. お使いのLinuxディストリビューションに基づいて、evdi-dkmsパッケージをインストールします:

    sudo apt install evdi-dkms
    <!--NeedCopy-->
    
  2. EVDIへのグラフィックディスプレイのオフロードを有効にします:

    /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix\Thinwire" -t "REG_DWORD" -v "Evdi" -d "0x00000001" --force
    <!--NeedCopy-->
    
  3. Intel GPUを使用している場合、ディスプレイマネージャーを無効にします。そうしないと、ディスプレイマネージャーがIntel GPUを占有し、Citrix®リモートセッションで使用できなくなります。

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

トラブルシューティング

グラフィック出力がない、または文字化けしている

3Dアプリケーションをローカルで実行でき、すべての構成が正しい場合、グラフィック出力がない、または文字化けしているのはバグが原因です。/opt/Citrix/VDA/bin/setlogを使用してGFX_X11をverboseに設定し、デバッグ用のトレース情報を収集してください。