web-dev-qa-db-ja.com

リモートデスクトップグラフィックカード

そのため、ほとんどの人が知っているように、RDPを使用してデスクトップに接続すると、グラフィックカードが無効になり、汎用CUDAが使用されます。

Windowsをグラフィックカードの代わりにCUDAを使用するように戻したくありません。コンピューターにGTX780tiがありますが、RDPで使用されていません。 Windowsにハードウェアグラフィックカードの使用を強制する方法はありますか?

TightVNC、RealVNC、LogMeInを試しましたが、RDPが最も高速で、最適に機能するため、RDPを使用したいと思います。

3
Anton8000

第一に、あなたはあなたの条件を混乱させています。 CUDAは、GPUをプログラミングするためのNVIDIAテクノロジーです(その他のものですが、これが最も簡単な説明です)。

MicrosoftのRDPは、レンダリングされた画面をネットワークパケットに変換してクライアントに送信する、独自のグラフィックスドライバーを使用します。

これはRDPの動作の中核であり、変更することはできません。

サーバーでは、RDPは独自のビデオドライバーを使用して、RDPプロトコルを使用してレンダリング情報をネットワークパケットに構築し、ネットワーク経由でクライアントに送信することで、ディスプレイ出力をレンダリングします。クライアントでは、RDPはレンダリングデータを受信し、パケットを対応するMicrosoft Windowsグラフィックデバイスインターフェイス(GDI)API呼び出しに解釈します。

ソース: http://msdn.Microsoft.com/en-us/library/aa383015(v = vs.85).aspx

7
Shevek

上記の回答のすべてが正しいですが、「これはRDPの動作のコアであり、変更することはできません」を除きます。絶対とは絶対言うな。

サードパーティの低速なソフトウェアを使用せずに、またWindows DLLを変更せずに、RDPよりも優れたグラフィックスドライバーを利用する方法は2つあります。

  1. (超ハード)物理ホストにWindows Server 2012r2をインストールします。次に、Hyper Vを使用して仮想デスクトップ環境を作成し、それらの仮想デスクトップの1つとしてOSをインストールします。リモートデスクトップサービスのサーバーの役割をインストールして構成します。次に、サーバー上で実行されている仮想マシンに仮想化GPUを追加できるようになります。これらのマシンにRDPを実行すると、RemoteFXが使用されます。 RemoteFXは、3DレンダリングとDX11に対応しています。

  2. (中程度のハード)物理ホストにWindows Server 2008r2をインストールします。リモートデスクトップサービスのサーバーの役割をインストールします。これをインストールすると、物理GPUレンダリングをRDPユーザーに渡すことができるレジストリ設定があります。必要に応じて、RemoteFXと呼ばれるvGPUを使用できるものもあります。はい、物理GPUなしでサーバーを実行することもできます。この方法は、Windows Server 2008R2でのみ機能します。

RDPはRemoteDesktopPROTOCOLの略です。これは、画像、音声、および制御変数をネットワークパケットフレームに分解して送信する方法を段階的に説明したものです。 RDPは、レンダリングやハードウェアアクセラレーションとは何の関係もありません。マシンに「RDP」した直後にイベントビューアを見ると、Windowsが最初にローカルマシンのグラフィックドライバをロードし、その直後にそれらを無効にして、デフォルトのひどいダイバーをロードする場所を見つけることができます。

3
Nunya