WindowsマルチセッションOS向けGPUアクセラレーション

最終公開日 : Oct 24, 2026
HDX™ 3D Proを使用すると、WindowsマルチセッションOSセッションで実行されているグラフィックを多用するアプリケーションを、サーバーのグラフィック処理ユニット (GPU) でレンダリングできます。OpenGL、DirectX、Direct3D、およびWindows Presentation Foundation (WPF) のレンダリングをサーバーのGPUに移行することで、グラフィックレンダリングがサーバーのCPUを遅くすることはありません。また、ワークロードがCPUとGPUの間で分割されるため、サーバーはより多くのグラフィックを処理できます。
Windows Serverはマルチユーザーオペレーティングシステムであるため、複数のユーザーがGPU仮想化 (vGPU) を必要とせずに、Citrix Virtual Apps™によってアクセスされるGPUを共有できます。
レジストリの編集を伴う手順では、注意して作業してください。レジストリを誤って編集すると、オペレーティングシステムの再インストールが必要になるような深刻な問題が発生する可能性があります。Citrix®は、レジストリエディターの誤った使用によって生じる問題が解決されることを保証できません。レジストリエディターは自己責任で使用してください。編集する前に必ずレジストリをバックアップしてください。

GPU共有

GPU共有により、リモートデスクトップセッションでOpenGLおよびDirectXアプリケーションのGPUハードウェアレンダリングが可能になります。これには次の特徴があります。
  • アプリケーションのスケーラビリティとパフォーマンスを向上させるために、ベアメタルまたは仮想マシンで使用できます。
  • 複数の同時セッションでGPUリソースを共有できます(ほとんどのユーザーは専用GPUのレンダリングパフォーマンスを必要としません)。
  • 特別な設定は不要です。
GPUは、ハイパーバイザーおよびGPUベンダーの要件に従って、フルパススルーモードまたは仮想GPU (vGPU) モードのいずれかでWindows Server仮想マシンに割り当てることができます。物理Windows Serverマシンへのベアメタル展開もサポートされています。
GPU共有は、特定のグラフィックカードに依存しません。
  • 仮想マシンの場合、使用しているハイパーバイザーと互換性のあるグラフィックカードを選択してください。XenServerのハードウェア互換性リストについては、「Hypervisor Hardware Compatibility List」を参照してください。
  • ベアメタルで実行する場合、オペレーティングシステムによって有効化された単一のディスプレイアダプターを使用することをお勧めします。ハードウェアに複数のGPUがインストールされている場合は、デバイスマネージャーを使用して1つを除くすべてを無効にしてください。
GPU共有を使用したスケーラビリティは、いくつかの要因に依存します。
  • 実行されているアプリケーション
  • 消費するビデオRAMの量
  • グラフィックカードの処理能力
一部のアプリケーションは、他のアプリケーションよりもビデオRAMの不足にうまく対処します。ハードウェアが過負荷になると、グラフィックカードドライバーの不安定化やクラッシュが発生する可能性があります。このような問題を避けるため、同時実行ユーザー数を制限してください。
GPUアクセラレーションが発生していることを確認するには、GPU-Zなどのサードパーティツールを使用します。GPU-Zは<http://www.techpowerup.com/gpuz/>で入手できます。
  • NVIDIA GPUおよびIntel Iris Proグラフィックプロセッサ用の高性能ビデオエンコーダーへのアクセス。ポリシー設定(デフォルトで有効)がこの機能を制御し、H.264エンコーディング(利用可能な場合)にハードウェアエンコーディングの使用を許可します。このようなハードウェアが利用できない場合、VDAはソフトウェアビデオコーデックを使用してCPUベースのエンコーディングにフォールバックします。詳しくは、「グラフィックポリシー設定」を参照してください。

DirectX、Direct3D、およびWPFレンダリング

DirectX、Direct3D、およびWPFレンダリングは、ディスプレイドライバーインターフェイス(DDI)バージョン9ex、10、または11をサポートするGPUを搭載したサーバーでのみ利用可能です。
  • Windows Server 2008 R2では、DirectXおよびDirect3Dで単一GPUを使用するために特別な設定は必要ありません。
  • Windows Server 2012以降では、RDセッションホストサーバー上のリモートデスクトップサービス(RDS)セッションは、デフォルトのアダプターとしてMicrosoft Basic Render Driverを使用します。Windows Server 2012以降のRDSセッションでGPUを使用するには、グループポリシーローカルコンピューターポリシー \> コンピューターの構成 \> 管理用テンプレート \> Windowsコンポーネント \> リモートデスクトップサービス \> リモートデスクトップセッションホスト \> リモートセッション環境で、すべてのリモートデスクトップサービスセッションにハードウェアの既定のグラフィックアダプターを使用する設定を有効にします。
  • WPFアプリケーションがサーバーのGPUを使用してレンダリングできるようにするには、Windows Multi-session OSセッションを実行しているサーバーのレジストリに設定を作成します。レジストリ設定については、レジストリで管理される機能のリストにある「Windows Presentation Foundation(WPF)レンダリング」を参照してください。

CUDAまたはOpenCLアプリケーションのGPUアクセラレーション

ユーザーセッションで実行されるCUDAおよびOpenCLアプリケーションのGPUアクセラレーションは、デフォルトで無効になっています。
CUDAアクセラレーションPOC機能を使用するには、レジストリ設定を有効にします。詳しくは、レジストリで管理される機能のリストにある「CUDAまたはOpenCLアプリケーションのGPUアクセラレーション」を参照してください。