第1 結論
複数のGPUを搭載するWindows 11のパソコンでは,「設定」→「システム」→「ディスプレイ」→「グラフィック」から,アプリごとに使用するGPUの優先設定を選べる。
Microsoftの案内が挙げる選択肢は,Windowsに選択を任せる「Windows に決定を任せる (省電力)」,消費電力の小さいGPUを優先する「省電力」,性能の高いGPUを優先する「高パフォーマンス」である。
Windowsの版により「Windows での自動決定 (省電力)」等と表示され,他の項目が表示されることもある。
この設定は,複数のGPUを搭載するパソコンで,特定アプリの描画先を比較するために役立つ。
ただし,GPUを指定すればフリーズが直るとは限らない。
Windows全体の停止には,表示ドライバー,GPU,電源,メモリ,ストレージ,同期処理その他の原因もあり,アプリ別GPU設定は原因を一つずつ切り分けるための可逆的な比較手段として使うのが安全である。
第2 三つの選択肢の違い
1 Windows に決定を任せる
既定状態では,Windowsがアプリに使用させるGPUを決める。
特定のGPUを優先する必要がない場合,又は手動指定によって症状が改善するか分からない場合は,まずこの状態を基準として記録する。
2 省電力
MicrosoftのDXGIの定義(設定画面の説明ではなくAPIの定義である。)では,省電力側の選好は,統合GPU等の消費電力が小さいGPUを優先する考え方である。
発熱又は消費電力を抑えたい場合の候補となるが,「省電力」という名称だけで安定性が高いと決まるわけではない。
3 高パフォーマンス
高パフォーマンス側の選好は,外付けGPU又はディスクリートGPU等の性能が高いGPUを優先する考え方である。
描画負荷の高いアプリでは性能上の利点があり得るが,消費電力,発熱及び使用するドライバー経路も変わり得るため,フリーズ対策として一律に選ぶ設定ではない。
第3 アプリごとにGPUを指定する手順
1 対象アプリを追加する
①「設定」を開く。
②「システム」→「ディスプレイ」→「グラフィック」を開く。
③対象アプリが一覧にある場合はそのアプリを選ぶ。
④一覧にない場合は,デスクトップアプリ又はMicrosoft Storeアプリ等の区分を確認し,対象アプリを追加する。
⑤似た名前の実行ファイルが複数ある場合は,実際に起動しているファイルの場所と一致するかを確認する。
2 GPUの優先設定を保存する
対象アプリの「オプション」を開き,「Windows に決定を任せる」,「省電力」又は「高パフォーマンス」を選んで保存する。
Microsoftの案内では,変更後に対象アプリを再起動する手順となっている。
設定変更前に編集中のデータを保存し,そのアプリだけを終了して再起動する。
3 変更後に確認する
タスクマネージャーの「GPUエンジン」等で,対象アプリがどのGPUを使用しているかを確認できる場合がある。
ただし,複数の子プロセスを使うアプリでは,プロセスごとに表示が異なることがある。
一つのプロセスの表示だけで,アプリ全体が常に同じGPUを使用していると決めない。
第4 フリーズ調査での使い方
フリーズ調査では,一度に複数の設定を変えない。
まず既定状態で,発生時刻,操作内容,遠隔操作の有無,CPU,利用可能メモリ,ディスク待ち時間,GPU及びイベントログを記録する。
次に,対象アプリ一つだけを省電力又は高パフォーマンスへ変更し,同じ種類の作業で比較する。
改善した場合も,一回の比較だけで原因を確定しない。
同じ条件で症状が繰り返し変わるか,表示系のエラー,Windows Error Reporting又はGPU使用先の変化が同じ時刻に確認できるかを調べる。
悪化した場合は,元の「Windows に決定を任せる」へ戻し,変更前後の記録を残す。
第5 アプリ更新後に再確認する理由
Windowsのアプリ別GPU設定は,対象アプリを選択して登録する仕組みである。
アプリの更新方式によって実行ファイルの場所又は版別フォルダーが変わる場合は,従来の登録が新しい実行ファイルへ自動的に適用されると決めつけてはならない。
アプリ更新後に症状が再発した場合は,①現在起動している実行ファイル,②グラフィック設定に表示される登録先,③タスクマネージャーで観測できるGPUエンジンを再確認する。
同じ製品名の古い版と新しい版を取り違えず,古い登録の削除又は整理は,現在の実行先と戻し方を確認してから行う。
第6 遠隔操作との関係
Chromeリモートデスクトップ等の遠隔操作では,一般に,操作される側のPCが画面を取得・転送し,操作する側のPCが受信した画面データを展開(デコード)して描画する。
したがって,遠隔操作中の負荷は一方のPCだけに生じるとは限らない。
操作する側のPCでCodexその他のAIアプリも同時に動かしていれば,AIアプリの描画,Chromeの遠隔画面表示及びDesktop Window Manager等の処理が同じPCで重なることがある。
反対に,AIアプリが操作される側のPCで動いている場合は,そのPCでAIのローカル処理と遠隔画面の取得・転送が重なる。
MicrosoftのDesktop Duplication APIの説明は,遠隔協働等のためにデスクトップ画像の更新を取得し,GPUを使って画像更新を処理できる仕組みを示している。
もっとも,同資料はChromeリモートデスクトップに触れておらず,同製品が同APIを使う根拠にはならない。
遠隔操作中に一度フリーズしたという事実だけで,遠隔操作又はGPU設定を原因と決めることはできない。
第7 記録しておく項目
変更前後で,次の項目をそろえて記録する。
①対象アプリの製品名,版及び実行ファイルの場所
②変更前と変更後のGPU設定
③変更日時及びアプリ再起動の有無
④直接操作又は遠隔操作の別
⑤接続ディスプレイの台数,解像度及び表示内容
⑥発生時刻,最後の正常な性能サンプル及び強制終了時刻
⑦利用可能メモリ,コミット,CPU,ディスク待ち時間及びGPU
⑧Event 41,6008,Display,WHEA及びWindows Error Reporting(WER-SystemErrorReporting 1001を含む。)
⑨設定を元へ戻した後の結果
プロセス数は,AIのチャット又はセッション数と同じではない。
一つのアプリが複数の子プロセスを持つことがあるため,可能であればPID,開始時刻及び実行ファイルの場所も併記する。
第8 設定変更で解決しない場合
利用可能メモリに十分な余裕があり,ディスク待ち時間も低いのにWindows全体が停止する場合は,メモリ増設又はディスク高速化だけでは説明しにくい。
表示ドライバー,GPU,電源,冷却,BIOS,アプリの版,遠隔操作,複数ディスプレイ及びWindows Error Reportingを調べる必要がある。
Event 41又は6008は,正常終了しないまま再起動した事実を示す手掛かりであり,単独では原因を示さない。
BugcheckCodeが0でダンプがない場合も,強制電源断,電源問題又はハードハング等の区別が残る。
再現性がある場合は,軽量な継続ログで時刻を絞ってから,必要に応じてWindows Performance Recorder等を検討する。
第9 関連記事
Chromeリモートデスクトップ利用中の停止の切り分けは,Chromeリモートデスクトップ利用中にWindows 11がフリーズする場合の切り分け―遠隔接続,表示系及びPC本体の停止を区別する(AI作成)を参照されたい。
Claude Code又はCodexの利用時のメモリ,子プロセス及び他の負荷の確認は,Claude Code・Codexでパソコンがフリーズする原因-メモリ8GB・16GB・32GB・64GBの違い(AI作成)を参照されたい。
フリーズ後の性能ログ及びイベントログの読取りは,Windows 11がフリーズした原因を後から調べる方法―最後のコマンド,パフォーマンスモニター及びイベントビューアー(AI作成)を参照されたい。
第10 出典・参考資料
① Microsoft「Optimizations for windowed games in Windows 11」
② Microsoft「DXGI_GPU_PREFERENCE enumeration」
③ Microsoft「Desktop Duplication API」
④ Microsoft「Event ID 41 The system has rebooted without cleanly shutting down first」
⑤ Google「Access another computer with Chrome Remote Desktop」