2020年6月26日金曜日

ハードウェアアクセラレータによるGPUスケジューリング "WDDM 2.7" 神アプデ

WindowsVista以降7,8,8.1,10含めこれまでWDDMは表示遅延の問題を抱え続けてきました
ついに解決に向けた大きな一歩を踏み出しました


これまでを簡単に振り返ってみましょう

2007年セカンド・オピニオン (231) OS小論:OSの構造をもう少し考えてみる(37) | マイナビニュース
(中略)ここまでの話はVistaに限らず、PCI系のAPIを使う全てのマシン
(敢えてPCとは呼ばない。Embedded系デバイスなども同じだからだ)
に共通の話だが、Vistaは更にこれを悪化させる。

それはWDDMに絡んだビデオメモリの仮想化だ
2009年PC Engine emulator Ootake Windows7/Vistaがゲーマーから避けられる要因
"Windows Vista"は、特にゲーマーからは避けられていたOSですが、
新しいOS"Windows 7"についても、このままでは同様の結果になってしまいそうです。
2012年Windows8以降まだ改善がある方でしたがそれでもXPDM並に近づく事は出来ませんでした




そして今回ついに!Windows10バージョン2004のWDDM2.7に
「Hardware-accelerated GPU scheduling」(略称HAGS)
日本語で「ハードウェアアクセラレータによるGPUスケジューリング」
という新機能が導入されました!



2020年GPU性能がアップするWindows 10の新機能が使えるGeForceドライバが公開 - PC Watch
Windows 10 May 2020 Update(バージョン2004)では
「設定→グラフィックの設定」のページ内に「ハードウェアアクセラレータによるGPUスケジューリング」という機能が用意されており、
有効化することでビデオカードが自身のメモリを直接管理できるようになり
性能改善やレイテンシの削減が行なわれるとしている。
Hardware Accelerated GPU Scheduling | DirectX Developer Blog
Windows 10 hardware accelerated GPU scheduling explained
Microsoft explains Hardware Accelerated GPU Scheduling - Graphics - News - HEXUS.net

WDDMでビデオメモリを直接管理出来るようになった事により
Vista時代から残るWDDMの大きな問題の1つが解決に近づいたのです!👏

XPDMで出来た事とはいえ今回はWDDMの根幹に関わる改善です
🎉歓迎すべき良いニュースです🎉

Windows自体これまで何かと悪いニュース続きでしたが
解決への動きは評価しようと思った次第です

しかしVista発売から13年も経ち
そんなに待たされると人間が年取って反射神経が鈍ってしまいます^q^


もちろんWDDM2.7以降かつ「ハードウェアアクセラレータによるGPUスケジューリング」に
対応したGPUドライバが用意されてる必要があります

NVIDIAの場合
2020年6月時点でGeForce GTX1000番台以降に対応したドライバを公式サイトから入手できます
NVIDIAドライバダウンロード


GTX900番台以前はXPDMが用意されてましたが
GTX1000番台以降はXPDMが無く
このままではWindowsでGTX1000番台以降のビデオメモリを直接管理出来ないので
今回対応したものと思われます



Vistaや7(WDDM)の負の遺産である大きくなってしまったオーバーヘッドを減らすのが目的なのに
ベンチマーク結果「だけ」を見て効果が無いと言う浅はかな人が居ます
性能改善は二の次で今回の話とあまり関係ありません
性能だけが必要ならTITANでSLIを組むか秋発売のRTX3090でSLIを組めば良いのです


この「ハードウェアアクセラレータによるGPUスケジューリング」
今回なぜON/OFF形式で登場したのかという話なのですが

━【 まず基本としてVistaのWDDM1.0からGPUを仮想化した事によって実現した機能 】━
これらVista時代の新機能WDDMが元となり以降7,8,8.1,10に継承されています
◆VistaからのGPU仮想化で実現した機能①◆
【グラフィックドライバが動作停止してもWindowsが止まらずにドライバを初期化する事が出来る】

Windowsは世界中で販売してますから
PCが不安定だけどとりあえず動き続ける事に恩恵を受けてる人もどこかに居るでしょう
そんなPCで「ハードウェアアクセラレータによるGPUスケジューリング」をONにすると
グラフィックドライバの動作停止と同時にWindowsがブルースクリーンになります

しかしあなたのPCはグラフィックドライバが動作停止した事がありますか?
普通は滅多に動作停止しないはずです
特にゲーム中に止まるとなればそもそもPCとして話になりません
◆VistaからのGPU仮想化で実現した機能②◆
【GPUを使用するアプリケーションのマルチタスク(同時処理)効率が上がっています】

ゲームをしながらGPUエンコードで録画や配信するなどの場合に
「ハードウェアアクセラレータによるGPUスケジューリング」をONにすると
比べればシングルタスク特化になるのでプレイ中のゲーム以外のGPU同時処理が遅くなります

しかし他アプリにGPU同時処理させる用事が無く単に1つの画面に集中したいなら
ONで問題ありません

結構前の話ですが(時期的に2010年頃?)
Windows7の時代にやたらWDDM1.1を持ち上げている人達が居たのですが
これはGDIやオーバーレイ描画のGPU支援といったXPDMに元々ある機能を遅れて実装したもので
重かったVistaのWDDM1.0から多少マシになりましたがレイテンシはXPDM並には程遠く
(WDDM1.1と言えば初登場したDirectX11の作品はまだ少なくプレイ人口が多い作品は9.0cが占めた)
皮肉な事に後のWin8のWDDM1.2ビデオメモリ効率化などによる改善の方がまだ実感出来るレベル
(Windows8でDWMを無効にしたのが懐かしいですね)
このような人達は個人差うんぬん以前の問題使い比べてすらいないのです
エアプの話には気を付けよう!

エアプ - Weblio辞書
未経験者が経験者であり玄人でもあるかのように振る舞うこと、
その言動、そのように振る舞う人を指す言い方。
(中略)
巷で見聞きした(経験に依拠しない)情報に基づき、
横やりを挟むような振る舞いを指すことが多い。
「同じPC」または「非常に近いスペック構成のPC」で使い比べる
「フルスクリーン同士」「ウインドウ同士(DWMの有効/無効を確認)」
のようにしっかりハードを合わせて動作設定を確認するのがフェア(公平)です


🌟ぜひ実際に使って経験・効果を実感してみてください🌟
WDDM2.7の新機能「ハードウェアアクセラレータによるGPUスケジューリング」

0 件のコメント:

コメントを投稿