nvlddmkm の応答停止と正常回復(Windows 10)

PC
この記事は約27分で読めます。

illustrated by pixabay

Windows 8からWindows 10にアップデートしましたが、 nvlddmkm による応答の停止と正常回復のエラーがいつまでも出続けています。このエラーは、NVIDIAのドライバーの問題だそうですが、私のPCでは未だに改善されません。この解決方法は数多くあるので、今回、まとめてみることにしました。

 

スポンサーリンク

はじめに

現在使用しているPCは、自作PCで、元々はWindows XP機でした。

問題が発生しているPCのスペックは以下の通りです。

CPU Intel(R) Core(TM)2 Duo CPU E8400 3.00GHz
実装メモリ 3.00GB
Mother Board P5K-E
Graphic Board Quadro 410
OS Windows 10 Proffesional (32bit)

かなり古いPCで、よく今でも動いていると言ったところでしょうか…。

恐らく、Windows 8にアップグレードしてから、ディスプレイドライバーnvlddmkm.sysに関するエラーが出るようになったと思います。

当時、この問題の解決方法は、ディスプレイドライバーの再インストールでした。

NVIDIAのインストーラーにはクリーンインストールの機能があります。

そして、この機能では、設定値が規定値に戻り、作成したプロファイルはすべて削除されます。

しかし、実際には、ディスプレイドライバーの再インストールを行っても、古いnvlddmkm.sysが残っています。

このため、これを手動で削除するか、Display Driver Uninstaller(DDU)を使用してクリーンアンインストールをする必要があります。

DDUでNVIDIA製のディスプレイドライバーをクリーンアンインストールして再インストールすることで問題が解消される場合もあります。

しかし、場合によっては、ディスプレイドライバーの再インストールだけではこの問題が解決できないことがあります。

私の場合、ディスプレイドライバーのクリーンアンインストールと再インストールでは問題が解決されませんでした。

この問題の厄介なところは、ソフトウェア的な問題だけでなく、ハードウェア的な問題も関係していることです。

ハードウェア的な問題には、電源のパワー不足、グラフィックボードの故障、ハードウェアの相性や取付位置があるので、この場合には電源を変えるか、グラフィックボードを変える以外に解決策はないでしょう。

ソフトウェア的な問題には、前述した再インストール以外に、Windowsのシステムログに記録されるエラーから問題を解決できる場合があります。

nvlddmkm.sysのエラーが関係しているであろう障害が出た場合、システムログを確認してみると、大量のエラーが記録されていることが分かりました。

これらのエラーのイベント IDについて調べてみると、エラーの内容によっては、レジストリを修正するなどしてソフトウェア的に改善できるものもあります。

そこで、今回、nvlddmkm.sysが原因で起こるエラーのイベント IDをいくつかまとめてみることにしました。

ただし、ここでまとめたエラーのイベント IDが必ずしもnvlddmkm.sysが関係しているエラーとは限りません。

また、ここで消化している設定の中にはPCの動作に影響を与えるものもあるので、設定変更を行う場合は自己責任でお願いします。

 

 

nvlddmkm で出力されるエラーID

Windows 10にアップデートしてから色々と不具合が起こり、その不具合を解決するために「コンピュータの管理」のWindowsのシステムログを確認するようになりました。

今回のPCでnvlddmkm.sysが原因で起こる症状としては、以下の通りです。

  • 画面が暗転して一時的、あるいは完全にフリーズする。
  • マウスやキーボードの入力が一時的に利かなくなる。
  • 動画再生時に画面に画像が表示されず、音だけが再生される。

一時的な障害で回復してくれれば良いのですが、完全にフリーズしてしまうと、リセットボタンを押すか、電源を落とすしかなくなってしまいます。

この時、何か作業をやっていると場合によっては全てが台無しになってしまいます。

このような症状が出た際にシステムログを確認すると、以下のようなエラーメッセージとイベントIDが出力されます。

イベントID 13 or 14

今回の問題が発生したPCでは、以下のようなメッセージでイベントID 13が発生しました。

ソース “nvlddmkm” からのイベント ID 13 の説明が見つかりません。このイベントを発生させるコンポーネントがローカル コンピューターにインストールされていないか、インストールが壊れています。ローカル コンピューターにコンポーネントをインストールするか、コンポーネントを修復してください。

このメッセージについて調べてみると、他の人ではイベントID 13ではなく、イベントID 14が発生しているようです。

そして、以下のサイトを見つけました。

http://ch.nicovideo.jp/nonno_moe/blomaga/ar1188885

どうやら、NVIDIA製グラフィックボード、パーツ本体(不良品や故障)の問題や、ドライバによるエラーが起きた際に、Windows標準機能のイベント ビューアーに記録されるエラー番号のようです。

このエラーについて紹介しているサイトの多くは、ゲームを扱っているサイトなので、どうやらゲームを行っている際に出てくるようです。

私の場合、このPCではゲームをやっておらず、ScketchUpなどの3D描画ソフトを使用している際にこのエラーが発生します。

最近のゲームは3D描画なので、当たり前と言えば当たり前かもしれません。

上記参考サイトの方は、何をやっても問題が解消されず、最終的にはグラフィックボードを新たに購入したそうです。

このエラーが出た場合、保証期間の間に早めに原因を究明した方が良さそうです。

イベントID 219

今回の問題に関係しているかどうかわかりませんが、システムログにイベントID 219が記録されており、その内容は以下の通りでした。

デバイス SWD\WPDBUSENUM\_??_USBSTOR#Disk&Ven_JetFlash&Prod_TS1GJFV60&Rev_8.07#BO4F408C&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b} のドライバー \Driver\WudfRd を読み込めませんでした。

WudfRdは、正式には”Windows Driver Foundation – User-mode Driver Framework”というサービスの一つのようです。

WudfRdについて調べてみると、以下のサイトが参考になりました。

[Win8.1]WudfRdってなんだろう?[警告]
パソコンを起動すると、毎回以下の警告が出ている。 『 デバイス SWD¥WPDBUSENUM¥_??_USBSTOR#Disk&Ven_Generic&Prod_USB_SD_Reader&Rev_1.00#920321111113&0#{...

“SWD\WPDBUSENUM”は、”Portable Device Enumerator Service”というサービスで、説明はよく分かりませんでした。

ただ、”リムーバブル大容量記憶装置”が関係しているそうなので、ひょっとしたら以前問題になったSSDが関係しているかもしれません…。

SSD の中身が消える!? Windows 10 (Version 1607)
Windows 10に2017年1月に発行された更新プログラムをインストールしたところ、Windows 10の動作が遅くなり、再起動してドライブの修復を繰り返すようになりました。インストールメディアからコマンドプロンプトを起動し、 SSD ...

解決方法

とりあえず、解決方法を調べてみると、以下の内容を見つけました。

Redirecting

windows 10の場合、まずスタートメニューから「Windows 管理ツール」→「コンピューターの管理」をクリックします。

すると、「コンピューターの管理」ウィンドウが表示されるので、左側に表示されているツリーメニューから、「サービスとアプリケーション」→「サービス」をクリックします。

 

 

次に右側に表示されるサービスの中から、”Windows Driver Foundation – User-mode Driver Framework”を探し、文字上で右クリックして、図のように「プロパティ」をクリックします。

表示される「プロパティ」ウィンドウで「全般」タブを選択し、「スタートアップの種類」を「手動」から「自動」に変更します。

 

 

あとは、「OK」ボタンあるいは「適用」ボタンを押して、設定は終了です。

上記の方法がダメな場合、次のような解決方法もあるようです。

Windows10アップグレード後のエラーあれこれ(解決含む)
■devicesetupmanager 131のエラー<解決方法>管理者権限でレジストリエディターを起動。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Device...

WPDBUSENUMは、”Portable Device Enumerator Service”だそうで、”Windows Driver Foundation – User-mode Driver Framework”と同様に「サービスとアプリケーション」→「サービス」に含まれます。

そこで、”Portable Device Enumerator Service”を「無効」にするのも一つかもしれませんね。

これは、Windows Media Playerやイメージインポートウィザードなどのアプリケーションでリムーバブル大容量記憶装置を使用してコンテンツを転送または同期しないのなら「無効」でも問題ないそうです。

イベントID 4101

基本的に何が切っ掛けで発生するのかは分かりません。

とりあえず、今までの経験上ではChromeなどのウェブブラウザを操作しているときやScketchUpなどの3D描画ソフトを操作しているときに発生します。

PCに負荷を掛けるような処理をしている時かと思えば、そうとも言えず、ブラウザの検索窓に文字を入力中に発生するときもあります。

画面が突然止まり、あらゆる操作が一時的に受け付けなくなったとき、システムログを確認すると、このイベントID 4101が大抵発生しています。

エラーの内容は、以下の通りです。

ディスプレイ ドライバー nvlddmkm が応答を停止しましたが、正常に回復しました。

また、ScketchUpで3D描画をしていると、以下のようなメッセージウィンドウが表示されます。

 

 

ここを見ると、どうやら、何かしらの処理でGPUが選択された際、CPUの処理能力よりGPUの処理能力が低いと発生するエラーのようです。

イベントID 4109

イベントID 4109が出力されるときは、3Dのゲームなどを実行している場合が多いようです。

私の場合、エラーメッセージを確認してみると、主に以下の内容でした。

アプリケーション プログラム名 のグラフィックス ハードウェアへのアクセスはブロックされました。

今のところ、プログラム名で表示されたことがあるのは、Microsoft.Photoとchrome.exeでした。

「NVIDIA コントロールパネル」を開き、メニューにある「デスクトップ」→「GPU クティビティ アイコンを通知領域に表示する」をチェックします。

 

 

そうすると、画面右下のタスクバーにアイコンが追加されます。

そして、このアイコンをクリックするとGPU上で実行中のアプリケーションが表示されます。

 

 

GPU上で実行中のアプリケーションを確認してみると、イベント ID 4109でアクセスをブロックされたアプリケーションのchrome.exeとmicrosoft.photos.exeがGPU上で実行されていることが分かります。

ひょっとしたら、ディスプレイドライバーの応答と停止の原因となるプリケーションの特定に繋がるかもしれません。

イベントID 8021

このイベントIDは、nvlddmkm.sysによって発生するエラーとは関係ないかもしれません。

ただ、ブラウザで動画を再生してるときにイベントID 4101が記録された後に記録されていたので、とりあえず調べてみることにしました。

ブラウザー サービスは、ブラウザー マスター \\コンピュータ名 (ネットワーク \Device\NetBT_Tcpip_{AC291208-43CB-400A-8F3E-AC10007CE333}) からサーバー一覧を取得できませんでした。

このイベントIDが記録される条件として、まず公式では以下のように紹介されています。

  • コンピューターがマルチホーム コンピューター (つまり、複数のネットワーク カードを使用して、複数のサブネットに同時にリンクしているコンピューター) である。
  • コンピューターがマスター ブラウザーである。
  • コンピューターで TCP/IP プロトコルを使用している。

ドメイン マスター ブラウザーで発生するブラウザー イベント ID 8021 および 8032 の一般的な原因と解決方法」より抜粋

恐らく、大概の人は、複数のネットワークカードを使用することはないので、マルチホームコンピューターであるという条件は当てはまらないでしょう。

次に、マスターブラウザーかどうかですが、まずマスターブラウザーとはLAN(Local Area Network)内で最新のOSで優先順位が高いコンピューターがマスターブラウザーとして選ばれるようです。

LANの構築にルーターを使用していて、かつルーターにsambaが利用されているとルーターがマスターブラウザになる場合があるようですが…。

Redirecting

いずれにせよ、PCを複数台所有していて、LANを構築していれば、使用しているPCがマスターブラウザである可能性があります。

このため、コンピューターがマスターブラウザーであるという条件が該当する可能性はあるでしょう。

マスターブラウザーかどうかの確認方法は、「コマンドプロンプト」を起動し、以下のコマンドを入力します。

nbtstat -a NetBIOS名 or IPアドレス

最後に、TCP/IPとは、インターネットやイントラネットなどのコンピューターネットワークのデータ転送に標準的に利用されているプロトコルです。

このため、TCP/IPプロトコルを使用していないコンピューターはまず無いと思うので、ほとんどの人が最後の条件に該当することになると思います。

どの条件が該当するかを確認し、このイベントIDが発生する原因を見てみると、以下の2つが該当する可能性があります。

  • 強制選択により、コンピューターがマスター ブラウザーの役割を代理で実行している。
  • マスター ブラウザーで不適切なサブネット マスクが使用されている。

さらに、私の場合、マスターブラウザーの強制選択は行っていないので、該当するとすれば、不適切なサブネットマスクの使用ということになるのでしょうか。

イベントID 10010

Windows 10を再起動した後にシステムログを確認すると、イベントID 10010が発生していることが分かりました。

サーバー {4AA0A5C4-1B9B-4F2E-99D7-99C6AEC83474} は、必要なタイムアウト期間内に DCOM に登録しませんでした。

私の場合、以下の項目の中からいずれか2つだけでしたが、人によっては多発しているようです。

  • 4AA0A5C4-1B9B-4F2E-99D7-99C6AEC83474
  • AB8902B4-09CA-4BB6-B78D-A8F59079A8D5
  • 9BA05972-F6A8-11CF-A442-00A0C90A8F39
  • E60687F7-01A1-40AA-86AC-DB1CBF673334
  • D63B10C5-BB46-4990-A94F-E40B9D520160
  • 260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E
  • A4FBCBC6-4BE5-4C3D-8AB5-8B873357A23E
  • 989F13EE-B25B-4FAB-9AED-C4336C8CCF0C
  • Microsoft.SkypeApp_11.15.597.0_x86__kzf8qxf38zg5c!App.AppX85gcbw533amccd2rr8qswxymhfj649t2.mca

特に、多く発生するのは、”4AA0A5C4-1B9B-4F2E-99D7-99C6AEC83474″と”AB8902B4-09CA-4BB6-B78D-A8F59079A8D5″です。

このイベントID 10010について調べてみると、以下の内容を見つけました。

Redirecting

この内容を読み進めていくと、グラフィックボードが関係している可能性が書かれています。

AMD製のグラフィックボードを搭載しているPCの場合、「AMD External Events Utility」を無効にすると、このイベントIDの発生がなくなる場合があるようです。

また、NVIDIA製グラフィックボードでは、ディスプレイドライバーを更新したことでも、このイベントIDの発生がなくなったようです。

 

スポンサーリンク

 

ディスプレイドライバーの応答停止と回復

「ディスプレイドライバーの応答停止と回復」が起こる原因は様々です。

この問題を解決するためには、可能であれば、問題を特定する必要があります。

問題を特定せずに闇雲な対処を行うと、場合によっては、その対処方法が意味をなさないこともあるようです。

問題の特定

NVIDIA製のグラフィックボードでオリジナルファンを搭載しているオーバークロックモデルには、NVIDIAのコントロールパネルにデバッグモードがあるそうです。

そして、NVIDIAリファレンスクロック速度にクロック速度を下げ動作を確認することで、ドライバーの問題なのかグラフィックスボードの問題なのかを切り分けることができるそうです。

この内容に関しては、以下のサイトを参考にしました。

http://phantasies.blog.fc2.com/blog-entry-2.html

このサイトを読むと、NVIDIA製のディスプレイドライバーを更新すると、nvlddmkm.sysが増えていくのはWindowsの仕様だそうです。

そして、NVIDIAのディスプレイドライバーが原因で起きる応答停止と回復の対処方法の1つで、その他のソフトウェアやハードウェアに問題がある場合には複数ある【nvlddmkm.sys】をアンインストールしても効果がないそうです。

残念ながら、私が使用しているグラフィックボードはQuadro 410で、このモードがありませんでした。

このため、デバッグモードの何を見て、ディスプレイドライバーの問題か、グラフィックボードの問題かを判断するかは分かりませんでした。

そして、「ディスプレイドライバーの応答停止と回復」がディスプレイドライバーの問題かグラフィックボードの問題かを切り分けることができませんでした。

もし、使用しているグラフィックボードにデバッグモードがある場合、この問題の切り分けを事前に行っておくと良いかもしれません。

NVIDIA側の解決方法

仮に、ディスプレイドライバーの問題であった場合、デバイスドライバーの再インストールが必要になります。

そこで、問題になるのはデバイスドライバーのアンインストールだと思います。

デバイスドライバーのクリーンアンインストール

デバイスドライバーの再インストールを行う前に、まずデバイスドライバーのアンインストールを行う必要があります。

アンインストールに関して、何が問題に古いnvlddmkm.sysが残るか残らないか、そして、古いnvlddmkm.sysが残った場合、それを消すかどうかだと思います。

本来であれば、「コントロールパネル」にあるプログラムのアンインストールでNVIDIA製グラフィックボードのドライバーを削除すれば良いと思います。

しかし、これでnvlddmkm.sysが削除されずに残った場合、選択肢として以下の4つが挙げられます。

    1. そのままにする。
    2. ドライバーインストール時に「クリーンインストールの実行」を行う。
    3. 手動で削除する。
    4. アンインストールの際にDDUを利用する。

上記の選択肢を実行する前にnvlddmkm.sysを検索し、nvlddmkm.sysが複数ある場合、各ファイルの日付を確認しておきましょう。

これをしておかないと、nvlddmkm.sysがそのまま残っているものか、後からインストールされたものか確認ができません。

複数あるnvlddmkm.sysをそのままにして、ドライバーの再インストールをこれで問題なければ他の項目を実行する必要はないかもしれません。

もし、複数あるnvlddmkm.sysをそのままにしてドライバーの再インストールを行っても問題が起こった場合、ドライバーのインストール時に「クリーンインストールの実行」をチェックしてインストールしてみましょう。

「クリーンインストールの実行」は、NVIDAのドライバーをインストールする際に、「インストール オプション」で「カスタム」選択します。

次に表示される「カスタム インストール オプション」で「クリーンインストールの実行」をチェックします。

 

 

後は、特に設定することはないので、「次へ」ボタンをクリックしてインストールを実行します。

もしクリーンインストールを行っても、古いnvlddmkm.sysが複数残っていて、かつ「ディスプレイドライバーの応答停止と回復」が起こる場合、古いnvlddmkm.sysを手動で削除してみましょう。

上記で紹介したサイトで「クリーンインストールの実行」のチェックを入れてインストールを実行すれば古いnvlddmkm.sysは残らないとのことです。

なので、古いnvlddmkm.sysを手動で削除することはないと思います。

では、何故、手動での削除を書いたかというと、原因は分かりませんが、「クリーンインストールの実行」を行った後でも古いnvlddmkm.sysが残っていて手動で削除したことがあるからです。

もし、NVIDIAのドライバーインストーラーでクリーンインストールを行っても「ディスプレイドライバーの応答停止と回復」が起こる場合、最終的な手段としてDDUでディスプレイドライバーのアンインストールを試してみるのも一つかもしれません。

ただし、DDUを利用する場合、必ず復元できるように「ファイルのバックアップと復元」でバックアップをしておくことを強く推奨します。

なぜなら、以前、DDUを実行した後でWindows 10が起動できなくなり、再インストールをする羽目になったことがあるからです。

このため、この方法は最終手段であり、自己責任で行ってください。

DDUでダウンロードした実行ファイル(DDU vxx.x.x.x)を実行する場合、予め作成したフォルダの中に実行ファイルを移して実行するか、あるいは解凍先のパスに任意のフォルダ名を指定してください。

仮にダウンロードフォルダでフォルダ名を指定せずに解凍を行うと、ファイルがフォルダに格納されていない状態で解凍されるので他のファイルと混ざり、どのファイルが解凍されたものなのか分からなくなってしまいます。

実行ファイル(DDU vxx.x.x.x)を実行するとDisplay Driver Uninstaller.exe(DDU.exe)が解凍されるので、これを実行します。

DDU.exeを実行すると、「起動オプション」ウィンドウが表示されます。

 

 

起動オプションには、通常モード・セーフモード(推奨)・セーフモード(ネットワーク有効)の3つがあります。

恐らく、以前、DDUでアンインストールした後にWindows 10が起動しなくなったのは通常モードでの実行だったので、セーフモード(推奨)での実行を強く推奨します。

私の場合、セーフモードで実行すると、Windowsログイン後に以下のようなメッセージが表示されました。

 

 

ただ、実際には実行できているので、何が問題なのかよく分かりませんでした。

このとき、DDUはこのメッセージの後ろで起動されているので、「閉じる」ボタンを押します。

 

 

表示されたDDUでは、「選択したグラフィックドライバー」がデフォルトでNVIDIAに設定されています。

特に操作するところは「Windowsデバイスのインストール設定を既定にセットする」を設定するかどうかで、何もなければ「削除して再起動」ボタンをクリックします。

再起動後、私の場合、問題なくNVIDIA製グラフィックボードのデバイスドライバーは削除されており、nvlddmkm.sysを検索しても検出されませんでした。

PhysX構成の設定変更

PhysXとは、物理演算に特化したSDKライブラリおよび専用チップの総称です。

NVIDIA製グラフィックボードで、このPhysXの専用チップを搭載している場合、この設定を変更すると効果があるかもしれません。

ただ、このPhysXを利用するゲームやアプリケーションソフトを使用していなければ、この設定変更はあまり意味がないかもしれません。

私の場合、このPCではゲームはしないし、出来ないのでこの設定変更は意味がないと思いました。

もしNVIDIA製のグラフィックボードを使用していて、ゲーム中にディスプレイドライバーの応答と停止が発生しるようであれば、そのゲームがPhysXに対応しているかどうかを確認してから設定変更を行うかどうかを決めたら良いのかもしれません。

以下のサイトでは、問題が解決されたようです。

NVIDIA GeForce搭載PCでディスプレイエラーをたったこれだけの設定で解消できる方法
NVIDIA GeForce搭載PCでディスプレイエラーをたったこれだけの設定で解消できる方法

現在は、PhysXの不具合が解消されたようで、効果は無いという意見もあります。

設定方法は、「NVIDIA コントロールパネル」を開き、ツリーメニューから「PhysX の構成の設定」をクリックします。

 

 

次に、PhysXプロセッサの選択で、使用しているグラフィックボードの名前を選択するだけです。

例えば、Quadro 410を使用している場合、選択欄にQuadro 410が表示されます。

3D設定の管理

イベントID 4101で紹介したような error code 3 [sub error code2] のエラーメッセージウィンドウが表示された場合、この設定を行うと有効な場合があるようです。

[RESOLVED] Crashing with Nvidia OpenGL error code 3 - Prepar3D Forums

設定方法は、「NVIDIA コントロールパネル」を開き、ツリーメニューから「3D の設定の管理」をクリックします。

 

 

次に、表示された設定で「グローバル設定」タブを選択し、「3D 設定」項目の下にある「電源管理モード」の「パフォーマンス最大化を優先」を選択します。

古いDirectX9を使用している一部のゲームでは有効かもしれないそうです。

Windows側の解決方法

NVIDIA製のグラフィックカードに限らず、「ディスプレイドライバーの応答停止と回復」エラーが出力された場合、公式では以下の方法が紹介されています。

Windows 7 または Windows Vista の "ディスプレイ ドライバーの応答停止と回復" エラー - Microsoft サポート
エラー メッセージを解決するためのトラブルシューティング手順: ディスプレイ ドライバーの応答停止と回復

このエラーは、システムログで記録されるエラーとは別に、Windows 8やWindows 10では通知として画面右側に表示されます。

Windows 7は利用したことがないので分かりません。

視覚効果を調整してパフォーマンスを向上させる

一部の視覚効果を無効にするとコンピューターのパフォーマンスが向上する場合があります。 パフォーマンスを最適にするために全ての視覚効果を調整する方法は、Windows 10の場合、以下の通りです。

コントロール パネル」→「システムとセキュリティ」→「システム」をクリックします。

次に、ウィンドウ左にある「システムの詳細設定」をクリックします。

 

 

次に表示される「システムのプロパティ」ウィンドウの「詳細設定」タブをクリックし、「パフォーマンス」の「設定」ボタンをクリックします。

 

 

「パフォーマンス」の「設定」ボタンをクリックすると、「パフォーマンス オプション」ウィンドウが表示されます。

 

 

「パフォーマンス オプション」ウィンドウにある「視覚効果」タブを選択します。

このタブで表示される選択肢の中で、まず最初に「パフォーマンスを優先する」を選択します。

その次に、「コンピューターに応じて最適なものを自動的に選択する」を選択します。

この項目での設定は、これで終了です。

レジストリ エントリを変更して GPU の処理時間を増やす

Windowsの機能には「タイムアウト検出と復旧」というものがあります。

この機能は、 コンピューター上のビデオ アダプター ハードウェアまたはドライバーの処理の完了にかかる時間が通常よりも長くなっていることを検出します。

そして、ハードウェアやドライバーの処理に通常より時間が掛かる状況を検出すると、Windows がグラフィック ハードウェアのリセットと回復を試行します。

許容される時間 (2 秒) 以内に GPU がグラフィック ハードウェアをリセット、あるいは回復ができない場合、システムが応答しなくなります。

この結果として、エラー メッセージ “ディスプレイ ドライバーの応答停止と回復” が表示されます。
「タイムアウト検出と復旧」は、レジストリ値を調整することで処理完了までの許容時間を増やすことが可能です。

レジストリ値を調整するには、レジストリエディターを起動する必要があります。

レジストリの起動方法が分からない場合は、こちらをご覧ください。

レジストリエディターが起動したら、以下のサブレジストリキー(図の赤枠)を探します。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers

サブレジストリキーのGraphicsDriversを選択したら、メニューにある「編集」→「新規」を選択します。

次に、使用中のWindowsバージョンに合わせて、新規に作成するキーを選択します。

 

 

32bitのWindowsを使用している場合は、DWORD(図の青枠)を選択します。

あるいは、64bitのWindowsを使用している場合は、QWORD(図の青枠)を選択します。

DWORD、あるいはQWORDのどちらかで新規キーを選択すると、「新しい値#」が作成されるので、名前を「TdrDelay」にします。

次に、作成したキーをダブルクリックすると、以下のウィンドウが表示されます。

 

 

「値のデータ」に8を入力し、「OK」ボタンをクリックします。

レジストリキーの設定が終わったら、レジストリエディターを終了し、PCを再起動します。

これで、設定は終了です。

ちなみに、作成したキーの名前や値を修正したい場合、対象となるキー上で右クリックするとドロップダウンメニューが表示されます。

 

 

名前を付ける際にうっかり別の操作をして、名前が変更できなかったりする場合があるので、そのときは上記の方法で「名前の変更」をします。

レジストリキーの変更は、場合によってはPCが起動できなくなる恐れがあるので、何らかの操作を行う場合は必ずバックアップを取っておきましょう。

 

 

最後に

Windows 8にアップグレードしてから、ディスプレイドライバーnvlddmkm.sysに関するエラーが出るようになりました。

エラーによって生じる障害は、以下の通りでした。

  • 画面が暗転して一時的、あるいは完全にフリーズする。
  • マウスやキーボードの入力が一時的に利かなくなる。
  • 動画再生時に画面に画像が表示されず、音だけが再生される。

これらの問題は、Windows 10にアップグレードしてからも続き、ドライバーを更新しても改善されることはありませんでした。

そこで、今回、nvlddmkm.sysが原因で起こる問題を解決するために、NDIVIA側の設定とWindows側の設定を行いました。

また、nvlddmkm.sysで問題が起きた際、システムログに記録されたエラーのイベントIDを調べ修正可能なものは修正してみることにしました。

その結果、イベントID 13・219・4109が記録されることがなくなりました。

そして、イベントID 10010は、”4AA0A5C4-1B9B-4F2E-99D7-99C6AEC83474″と”AB8902B4-09CA-4BB6-B78D-A8F59079A8D5″の二つのみがたまに記録されるようになりました。

さらに、以前はフリーズすると復帰することがなく、リセットボタンを押すか、電源を落とすしかありませんでしたが、一時的なフリーズで復帰するようになりました。

では、ここで紹介している幾つかの対策を行った結果、上記の障害が完全になくなったかというと、残念ながら完全にはなくなりませんでした。

どうしても、完全にフリーズしてしまう障害はなくならず、この障害が起こった時はシステムログにもイベントIDが記録されないため、原因は不明です。

人によっては、グラフィックボードを取り付けているバスの位置を変えることで症状が直ったという話も聞きます。

しかし、今回のPCを構成しているマザーボードには他のバスがないため、この方法を試すことはできません。

そして、PCを構成しているハードウェアが古い物ばかりなので、こればかりはグラフィックボードを別の物に替えるしかないかもしれません。

当施設では、統合失調症や双極性障害、うつ病の方やその可能性のある方、あるいは引きこもりの方など様々な方が訪れます。

そして、その中にはPCによる3D描画に興味を持って、実際に3Dゲームや動画を作る利用者さんもいます。

ひょっとしたら、将来的には今回まとめた内容がその利用者さんたちの役に立つかもしれません。

 

 

追記(2017/7/20)

つい最近、Windows 10の32bit版から64bit版への移行が無料であることを知りました。

そして、この記事で紹介している障害が起きていたPCが64bitに対応しています。

そこで、このPCを32bitから64bitにすることにしました。

64bitに変更する場合、ファイルやアプリ、個人設定等を維持できるアップグレードできないので、クリーンインストールする必要があります。

Windows 10を64bitにした結果、まずnvlddmkm.sysのエラーが全く発生しなくなりました。

32bitではyoutubeなどの動画を再生しつつ、ScketchUpなどの3Dソフトウェアを同時に起動すると、PCがすぐに固まってしまいました。

試しに64bitで同じような状況を再現したところ、まったく固まることがありませんでした。

もしnvlddmkm.sysのエラーが発生しているPCが32bitのWindows 10で、構成しているハードウェアが64bitに対応しているのであれば、64bitへのアップグレードも一つの対策になるかもしれません。

 

コメント

  1. ぽーぽむ より:

    nvlddmkmが解決できず困り果てていたところ、こちらのWin10アップグレード化追記を試して無事解決できました!ありがとうございます~!
    まさか64bit化で改善されるとは思ってもいませんでしたので、本当に助かりました…。

    • 管理者 secky より:

      コメント、有り難うございます。
      64bit化による解決は偶然の産物でしたが、この記事がお役に立てたなら幸いです。

タイトルとURLをコピーしました