Windows Server 2016 で RemoteFX GPU の実験


Windows Server 2016 で個人的に魅力的に感じている RemoteFX 仮想 GPU について実験してみました。

スポンサーリンク

Windows Server 2016側の準備

Hyper-V の役割だけでなく、リモートデスクトップ仮想化ホスト の役割もインストールして RemoteFX を使えるようにします。
今回の環境では Intel HD Graphics のドライバがうまく適用できなかったので、
Radeon 7750 を装着して DirectX, OpenGL が動くようにしました。
ちなみに最近のドライバをインストールしましたが、 WHQL 非取得でしたが、 7750 でも Vulkan も動きました。
(vulkaninfo を実行できて、情報が色々と表示されました)。

第2世代仮想マシンでは RemoteFX GPU が使えないという情報があったので、
仕方なく第1世代仮想マシンを作成し、 Windows10 Pro をインストールしました。

ちなみに 第2世代仮想マシンで RemoteFX GPU がちゃんと動いたという情報もあるのですが、
現時点においては正式なサポートというわけでもないようなので、まずは第1世代で試したというわけです。

インストール手順

まずは第1世代仮想マシンを作成し、 Windows10 Pro をインストールします。
このとき、 RemoteFX GPU はまだ追加しません。
また使用した Windows10 は 1607 バージョンのものとなります。

Windows10 のインストールが終わったら以下の内容を設定しておきます。

  • リモートデスクトップ接続を許可しておく
  • 接続できるようにファイアウォールの設定を行っておく
  • 必要に応じてネットワークアダプタの設定

これらが終わったら、 RemoteFX アダプタを追加します。
RemoteFX アダプタが有効なときには、 Hyper-Vマネージャからのウィンドウでは表示不可能なので、
リモートデスクトップで接続できるようにしておくことが必須です。

実験

前述のように構成した環境で、 Windows10 Pro からリモートデスクトップ接続を行いました。
dxdiag では RemoteFX の有無に関係なく DirectX12 と表示されるので、あまりアテになりません。
Microsoftが提供しているソフトウェア実装のドライバが DX12 で動いてしまうので・・・。

とりあえずデバイスマネージャで確認してみると以下のようにディスプレイアダプタが表示されていました。
remotefx_1_devmgmt
RemoteFX がうまく認識できているようだったので、 OpenGL Extensions Viewer をインストールして、情報を確認してみたいと思います。
そして、取得した結果が以下のようになりました。
remotefx_2_oglextview
見事に OpenGL 4.4, DirectX も 9.0c と 11.0 と表示され、 Shader Model もまた 5.0 となっているようです。
OpenGL 4.5 以降はどんな感じなのか、拡張を見てみたところ以下のようになっていました。
remotefx_2_oglextview2
OPenGL ES 3.1 のモードを使うのはダメっぽいですね。
しかし機能だけを見るとリモートデスクトップ環境であれこれだけ使えそうなのはすごいですし、魅力的です。
試しに、内包していた OpenGL 2.1 のデモを動かしてみました。
remotefx_2_oglextview3
さすがに動かしているハードウェアの性能が低いせいもあるでしょう。 FPS は 24 とかでした。

OpenGL 3.3 あたりのデモを実行したところ以下のようにクラッシュして、落ちてしまいました。
安定して使えるとは言いがたいかもしれません。
remotefx_2_oglextview4

まとめ

ひとまずリモートで DirectX11, OpenGL 4.4 あたりのデバイスコンテキストが生成できるようになったのはすごい進歩だと感じました。
安定して使えるようになってくれれば、リモートデスクトップでGPUを使ったアプリを気にしないで動かせるようになるため嬉しいところです。
さすがに性能の問題もあるでしょうし、リアルタイムの操作が必要なアクションゲームは無理だろうと思います。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする