グラボの死亡を確認する方法

[1]:https://www.tipsfound.com/windows10/03009
[2]:https://qiita.com/Rinderon/items/3e84833cbd8688cd29fe
[3]:https://www.cyberpower.com/jp/ja/product/sku/cpj1200


グラボが死んだので、UE4ぷちコンどころではなくなった話。
おかしくなってからしばらくは UE4 とグラフィクスドライバのクラッシュとその回避方法のを調べていたので、その辺の話をまとめておく。

# 【結論】何はともあれ、まずはこれを試すべし

## こういう症状が起きたら：

- 画面が急にブラックアウトする（真っ黒になる）。
    - モニタが「映像信号が来ないので電源切りますね」とか言ってくる。
    - 特に 3D ゲームなどを起動した直後に起こるなら、グラボの死亡を疑っていいかもしれない。
- ディスクのアクセスランプを見ると、どうやら PC は死んでないっぽいように見える。

## あれこれ疑う前に、これを試すべし：

### まずはシャットダウンか再起動がしたい。

だが、画面が見えないので非常に難しい。私は電源長押しの強制シャットダウンを繰り返していた。だが、今になって調べたら、画面が見えなくても何とかシャットダウンする方法はあるようだ。
[Windows 10 便利なシャットダウンの方法][1] によると、

- `Windowsキー + X`, `U`, `U`
    - そもそも`Windowsキー + X`でメニューが開くので、あとは「シャットダウンまたはサインアウト(<u>U</u>) > シャットダウン(<u>U</u>) 」をマウスで選んだのと同等になる。
    - ということは、`Windowsキー + X`, `U`, `R` で再起動ができる。
- どこかデスクトップだと思われるところをクリックしてから、`Alt＋F4`。本来はダイアログが開いてシャットダウンや再起動を選べるのだが、気にせずに`Enter`を押す。
    - マウスポインタが画面のどこにいるか分からないので、ひたすら右端か左端に寄せて試すとよいかもしれない。

…などなど、知っておくとイザというときの助けになりそうな情報が並んでいた。

### 再起動できたら、まず試したいこと：グラボをOFFる。

といっても、再起動後、ちゃんと操作できる状態になったら、の前提条件付きだが、まず、デバイスマネージャを起動して、「ディスプレイアダプター > (グラボ) > デバイスを無効にする」で、グラボをOFFる。

![20200229_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/358170/2e62f976-4871-3531-3d30-90e4f47c769f.png)

そうすると、

![20200229_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/358170/43bfd3e6-028c-6f79-b56f-bc98d2ca892f.png)

こんな冷や汗もののダイアログが出てくるが、後から元に戻せるので心配ない。「はい(<u>Y</u>)」ボタンを押してしまうべし。

なお、タスクマネージャを起動して、パフォーマンスタブを開くと、これまでは GPU 0 (Intel Graphics) と GPU 1 (NVIDIA GeForce) の２つのグラフがあったところが、GPU 0 (Intel Graphics) だけになっていることで、本当にグラボをOFFれたかを確認できる。

![20200229_06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/358170/bc319dd2-68e2-72dc-7345-562b6fc7b3af.png)

そうすると、オンボードグラフィクス(この場合は Intel(R) UHD Graphics 630)のみで動くようになる。GeForceとは比べるべくもない必要最低限のパワーしかないが、それでもムービーも3Dグラフィクスだって動いてしまう。世間の技術は進歩しているw

これで、問題が起きたアプリを起動して、（非常に低い FPS なのを我慢しながら）再現テストをする。これで問題が起きなかったら、グラボが壊れた確率が非常に高いといえるだろう。

> 実際、PC のサポートセンターに「この操作をして Intel Graphics だと動くが、GeForce だと動かない」と伝えたら、すぐに理解してもらえた。

# 【その他の知見】

## Unreal Engine のせいなのか、そうでないのか。

今回、Unreal Engine 4 での作業中に発生した現象なので、UE4 を疑っていろいろと調べて回った。UE4 ANSWERHUB に投稿までしてしまった。結果は上記の通り「UE4 は完全にシロ」だったわけで、非常にお恥ずかしいし、申し訳ない。
それはそうとして、UE4 周りで色々と新しい知見を得られたのは大きく、後学のために残しておく。

今回の反省として、最初に言えることは「思わず UE4 上でのデバッグに終始してしまいがちだが、UE4 以外の環境でも試すべき」である。

- Epic Games つながりで、Epic Games Launcher からダウンロードできるアプリ。（時期によるが無料アプリもある。今回は Fortnite シーズン２で試せた）
- 3D Mark などのグラフィックの性能のベンチマークアプリケーション。これも無料で手に入るし、グラボのテストにはうってつけ。
- メーカーによっては、サポートサイトにテストアプリケーションが置いてある。サポートを受ける際に「テストアプリで試したが駄目だった」が伝えられれば非常に話が速い。

今回は、上記３つともブラックアウト現象（グラボのクラッシュ）が発生した。
せめて UE4 ANSWERHUB に投稿する前に気づければよかったのだが…（Epic Games の担当者の方、本当にすみません…）

UE4 由来のグラフィクス問題については長くなりそうなので、[次回につづく][2]。

## 電源などの環境の問題

実はグラボが死んだのは２回目。今回は買って半年のゲーミングPCで発生したので（あとUE4ぷちコンがあるので）必死に調べた。前回は長年使っていたゲーミングPCだったので、寿命かと思って放置していた（それが現在使っているゲーミングPCに買い替えた理由になったのだが）

さすがに同じことが２回起こると、自分の環境を疑う。
ネットで調べると、どうやら電源環境（つまりは壁から出ているコンセントや、配線状況）にも大きく左右されるようである。
私は非常に古いアパート（古くて安いアパート）に住んでおり、そんな老朽化した電源環境で電力を要求するゲーミングPCを使うのは、PCにとっては悪い環境ではないかとも思い始めた。

ということで、UPS を注文した。停電対策のほかに「電圧の安定化」効果もあるようだ。（今日手に入れた知識なので、正しくないかもしれない。とりあえず「ラインインタラクティブ方式」にはしておいたが、機種によって電圧安定の効果あるなしがあるかもしれない）

機会があれば、UPSのレビューもしたいと思う。

> 後日談
> UPS が届いた（[CyberPower CPJ1200][3]）。老朽化していると思われた電源は今のところ 100V か 101V を安定して供給している様子。電子レンジとか洗濯乾燥機とか掃除機とかを使うとどうなるかは、まだ試していない。
> あと、電圧の安定化機能はちゃんとついていた。一安心。