操作系统WindowsマルチセッションのためのGPUアクセラレーション
HDX 3 d Pro機能により,WindowsマルチセッションOSのセッションで実行しているグラフィック処理アプリケーションで,サーバー上のGPU(图形处理器)リソースを使用できるようになります。OpenGL,举、Direct3DおよびWindows Presentation Foundation (WPF)の処理をサーバーのGPUに移すことで,グラフィック処理によりサーバーのCPU速度が低下することを回避できます。また,ワークロードがCPUとGPUで分担されるため,サーバーでより多くのグラフィック処理が可能になります。
Windows Serverはマルチユーザーオペレーティングシステムなので,GPU仮想化(vGPU)を行わなくても,Citrix虚拟应用がアクセスするGPUを複数のユーザーで共有できます。
このトピックの説明にはレジストリの編集が含まれています。レジストリエディターの使用を誤ると,深刻な問題が発生する可能性があり,Windowsの再インストールが必要になる場合もあります。レジストリエディターの誤用による障害に対して,シトリックスでは一切責任を負いません。レジストリエディターは,お客様の責任と判断の範囲でご使用ください。また,レジストリファイルのバックアップを作成してから,レジストリを編集してください。
GPU共有
GPU共有により,リモートデスクトップセッションで動作するOpenGLアプリケーションおよび举アプリケーションでGPUハードウェアによるレンダリング処理が可能になります。GPU共有には,以下の特徴があります:
- ベアメタルまたは仮想マシン上で使用でき,アプリケーションのスケーラビリティとパフォーマンスが向上します。
- 複数の同時接続セッションでGPUリソースを共有できます(ほとんどのユーザーは専用GPUのレンダリングパフォーマンスを必要としません)。
- 特別な設定は必要ありません。
GPUは,ハイパーバイザーとGPUベンダーの要件に従って,完全パススルーモードまたは仮想GPU (vGPU)モードのいずれかで,Windows Server仮想マシンに割り当てることができます。物理Windows Serverマシンでのベアメタル展開もサポートされています。
GPU共有は,特定のグラフィックカードに依存するものではありません。
- 仮想マシンの場合は,使用中のハイパーバイザーと互換性のあるグラフィックカードを選択します。Citrix Hypervisorのハードウェア互換性リストについては,”Hypervisorハードウェア互換性リスト“を参照してください。
- ベアメタルを実行するときは,オペレーティングシステムで単一のディスプレイアダプターを有効にすることをお勧めします。複数のGPUがハードウェアに取り付けられている場合は,デバイスマネージャーを使用して1つだけ残して無効にします。
GPU共有でのスケーラビリティは,以下の要素により異なります。
- 実行するアプリケーション
- 消費されるビデオRAMの量
- グラフィックカードの処理能力
一部のアプリケーションでは,ビデオRAMの不足をより効果的に処理できます。ハードウェアが過負荷になると,グラフィックカードドライバーが不安定になるか,クラッシュが発生する可能性があります。このような問題を避けるには,同時接続ユーザーの数を制限してください。
GPUアクセラレーションが正しく動作しているかどうかを確認するには,GPU-Zなどのサードパーティ製ツールを使用できます。このツールは,http://www.techpowerup.com/gpuz/で提供されています。
- NVIDIA GPUの高パフォーマンスビデオエンコーダーと虹膜英特尔Proグラフィックプロセッサへのアクセス。ポリシー設定(デフォルトで有効)によりこの機能を制御し、H.264エンコーディングのハードウェアエンコーディングを許可します(利用可能な場合)。該当するハードウェアが利用可能でない場合、VDAはソフトウェアビデオコーデックを使用して、CPUベースのエンコーディングにフォールバックします。詳しくは、「グラフィックのポリシー設定“を参照してください。
举、Direct3DおよびWPFレンダリング
举、Direct3DおよびWPFレンダリングは,DDI(显示驱动接口)版本9例,10日または11をサポートするGPUが搭載されたサーバーでのみ使用可能です。
- Windows Server 2008 R2では,举およびDirect3Dで単一GPUを使用するために特別な設定は不要です。
- Windows Server 2012以降のRD会话主机サーバー上のリモートデスクトップサービス(RDS)セッションでは,デフォルトのアダプターとして微软基本レンダリングドライバーが使用されます。Windows Server 2012以降でのRDSセッションでGPUを使用するには,グループポリシーの[ローカルコンピューターポリシー]>[コンピューターの構成)>(管理用テンプレート]>(Windowsコンポーネント]>[リモートデスクトップサービス]>[リモートデスクトップセッションホスト]>[リモートセッション環境)で[すべてのリモートデスクトップサービスセッションにハードウェアの既定のグラフィックスアダプターを使用する]を有効にします。
- WPFアプリケーションでのレンダリングにサーバーのGPUを使用するようにするには,WindowsマルチセッションOSセッションを実行するサーバー上でレジストリキーを設定します。レジストリの設定について詳しくは,レジストリを介して管理される機能の一覧にある”Windows Presentation Foundation (WPF)のレンダリング“を参照してください。
CUDAまたはOpenCLアプリケーション用のGPUアクセラレーション機能
ユーザーセッションで実行中のCUDAおよびOpenCLアプリケーションのGPUアクセラレーションは,デフォルトで無効です。
CUDAアクセラレーションPOC機能を使用するには,レジストリ設定を有効にします。詳しくは,レジストリを介して管理される機能の一覧にある”CUDAまたはOpenCLアプリケーション用のGPUアクセラレーション機能“を参照してください。