PCのCPUをAMD Ryzen 7 3700XからAPUのAMD Ryzen 7 5700Gに変更し、さらにグラフィックボードをRadeon RX Vega56からRadeon RX 6600XTに変更したところ、画面表示でトラブルが起きました。
現在この問題は解決済みなのですが、原因の特定までかなりの時間を要してしまいました。
そこで本ページでは、この問題に関する解決までのプロセスを記録しておきたいと思います。
システム構成
今回トラブルが発生したPCのシステム構成は次の通りです。
旧構成 | 新構成 | |
---|---|---|
CPU(APU) | AMD Ryzen 7 3700X | AMD Ryzen 7 5700G |
メモリ | CFD W4U3200PS-16G(DDR4-3200 16GBx2) | 変化なし(流用) |
グラフィックボード | XFX Radeon RX Vega56 | PowerColor Red Devil AMD Radeon RX 6600XT |
マザーボード | ASRock X570 Phantom Gaming 4 | 変化なし(流用) |
電源ユニット | 玄人志向 KRPW-GK750W/90+ | 変化なし(流用) |
主な症状
Ryzen 7 5700GとRadeon RX 6600XTに換装したことで発生したトラブルは以下の通りです。
画面がブラックアウト
PCを使用していると、1日に数回という頻度で突然フリーズし、その直後に画面がブラックアウト、そして数秒後に復帰というトラブルが発生するようになりました。
ブラックアウト発生に規則性はないのですが、特にウインドウの開閉時や、ブラウザのタブを開く、閉じる、スクロールさせるなどしている時に発生する確率が高い感じでした。
そしてブラックアウトが起きると、その時に起動していたアプリケーションあるいは起動中のバックグラウンドプロセスにエラーが起きていました。
下の画像はdwm.exe(デスクトップウィンドウマネージャー)でエラーが起きた例です。
なお、ブラックアウトが起きると数秒後に画面表示が戻ることが多かったですが、稀にそのままPCが再起動されることもありました。
イベントID 4101やイベントID 1001(LiveKernelEvent 141)が発生
イベントビューアのシステムログを確認すると、ブラックアウト発生時にはイベントID 4101も同じタイミングでログに記録されていました。
その内容は「ディスプレイ ドライバー amdwddmg が応答を停止しましたが、正常に回復しました。」というもので、ソースは「Display」となっていました。
また、これと同時にイベントID 1001(LiveKernelEvent 141)がログに記録されていることもありました。
調べてみると、これはGPUのドライバに関するエラーのようです。
FF15ベンチマークで落ちる
FF15ベンチを走らせると、2~3回に1回くらいの頻度で起動時(Now Loading画面)にフリーズまたはブラックアウトが発生することがありました。
そしてシステムログには、ffxv.exeのアプリケーションエラーと同時刻に上記のイベントID 4101が記録されていることが多かったです(ただしイベントID 4101が発生しない場合もあり)。
なお、Now Loading画面でフリーズせずにベンチマークが開始されると、途中で落ちることはなく最後まで完走していました。
HDMI出力で画面が乱れる
Ryzen 7 5700Gの内蔵GPUでHDMIを使うと、リフレッシュレートが60Hzのときに限り画面がちらついたり表示が乱れたりというトラブルが発生しました。
リフレッシュレートを75Hz以上に変更すると画面表示は正常となりますが、上記のブラックアウトは引き続き不定期に発生しました。
なお、DisplayPortの場合は60Hzでも正常に表示されました(ただしブラックアウトは変わらず)。
再起動時に画面が表示されない
特にUEFIで設定変更した後の再起動時に、5回に1回くらいの割合で画面が表示されず真っ暗なままということがありました。
原因の可能性
こうした症状が起きる原因について、これまでの自作経験や今回調べた情報をもとに、可能性が高くなおかつ検証のしやすいものから順にリストアップしてみました。
(メモリとマザーボードはこれまで安定動作してきたものを流用しているため、今回の検証では優先順位が低めです。)
- Radeonドライバの不具合
- GPU(Ryzen 7 5700Gの内蔵GPUまたはグラボのGPU)の故障
- UEFIの設定
- OS(Windows10)の設定
- 電源ユニットの劣化もしくは故障
- メモリの相性もしくは故障
- マザーボードの故障
- Ryzen 7 5700Gのメモリコントローラー故障
Radeonドライバの確認
これまでRadeon RX Vega56を使ってきたので、このPCには既に最新バージョンのRadeonドライバ(AMD Software Adrenalin Edition 22.5.1)がインストールされています。
このドライバでVega56は安定動作していたので、ドライバは今回のトラブルの原因ではないだろうと思ったのですが、一般的にRadeonのドライバは評判が悪いということもあります(苦笑)。
そこで、ひょっとしたらこのバージョンのドライバはRyzen 7 5700Gの内蔵GPU(Radeon Vega8)や新しいグラボのRadeon RX 6600XTと相性が悪いのかもしれないと思い、古いバージョンのドライバを何種類か試してみました。
ですが結局、ドライバのバージョンを変更しても症状に変化はありませんでした。
GPUの確認
今回のトラブルは画面表示に関する症状がメインなので、今度はGPUにハードウェア的な問題があるのではないかと考え、以下の検証を行ってみました。
これまで使っていたグラフィックボードに戻す
新しく購入したグラフィックボード(Radeon RX 6600XT)の初期不良という可能性もあるので、まずはグラボをこれまで使っていたRadeon RX Vega56に戻してみました。
しかし、ブラックアウトは相変わらず発生しました。
Ryzen 7 5700Gの内蔵GPUを無効にする
次に、Ryzen 7 5700Gの内蔵GPUをUEFIで無効にし、グラボのGPUのみ使うように設定してみました。
しかし、ブラックアウトは相変わらず発生しました。
Ryzen 7 5700Gの内蔵GPUのみ使用する
今度は逆に、グラボを取り外してRyzen 7 5700Gの内蔵GPUのみ使うようにしてみました。
しかし、ブラックアウトは相変わらず発生しました。
Radeon RX 6600XTを別のPCIeスロットに挿す
現在使っているマザーボードにはPCI Express 4.0スロットが2本あるので、Radeon RX 6600XTをもう1本のPCI Express 4.0スロットに挿し替えてみました。
しかし、ブラックアウトは相変わらず発生しました。
これらのパターンをそれぞれDisplayPort出力の場合とHDMI出力の場合で検証しましたが、どちらを使っても結果は同じでした。
UEFI(BIOS)の設定確認
先程の検証で、とりあえずGPUにハードウェア的な問題が問題があるという可能性は低くなりました。
そこで次は、UEFIでCPUのオーバークロックや省電力関連の設定をオフにするとどうなるか試してみました。
具体的には、以下の項目を設定し検証しました。
(以下の項目名はASRock製マザーボードの場合です。メーカーによってそれぞれ項目名が異なる場合があります。)
- Precision Boost OverdriveをDisabledに設定
- Core Performance BoostをDisabledに設定
- PSS SupportをDisabledに設定
- Global C-state ControlをDisabledに設定
- CPU VDDCR_SOC Load-Line CalibrationをAutoからLevel1に変更
(Level1とするのはASRockの場合です。最適なLevelはメーカーによって異なるため事前に調べてください。誤ったLevelを設定するとCPU温度が急上昇する場合があります!)
しかし、いずれの設定変更も効果はなく、相変わらずブラックアウトが発生しました。
OS(Windows10)の設定確認
ネットを検索してみると、AMDのRadeonやNvidiaのGeForceのグラボに関わりなく、ブラックアウトや4101エラーの発生に関する情報が見つかりました。
その中にはWindowsの設定やレジストリを変更することで安定したというものもあったため、以下の設定を試してみました。
- FreeSyncをオフに設定
- ディスプレイのオーディオデバイス(AMD High Definition Audio DeviceとAMD Streaming Audio Device)を無効にする
- 視覚効果で「パフォーマンスを優先」に設定
- レジストリでTdrDelayを設定
- レジストリでULPSを無効に設定
- レジストリでEnableCrossFireAutoLinkを無効に設定
- 電源プランを「高パフォーマンス」に設定
- SysMainサービスを自動から無効に設定
- ゲームモードをオフに設定
- Intel(R) Optane(TM) Memory Serviceを無効に設定
これらの設定の中でも、特にZen2(Ryzen 7 3700X)ではオリジナルの電源プラン(AMD Ryzen Balanced、AMD Ryzen Power Saver、AMD Ryzen High Performance)が用意されていたものがZen3(Ryzen 7 5700G)ではWindows標準の電源プランを使うように変更されたので、このあたりが問題なのかとも思ったのですが残念ながら効果はありませんでした。
結局、上記のいずれの設定を変更しても今回のトラブルは解消しませんでした。
電源ユニットの劣化もしくは故障
GPU、UEFI、OSがとりあえずトラブルの原因ではなさそうなので、次に疑ったのが電源ユニットの劣化もしくは故障です。
今回のブラックアウトは何か決まった操作や処理を行ったら必ず発生するものではないのですが、このような事は以前、電源ユニットが劣化した際にも起こりました。
ただ、電源ユニット劣化の際はOS起動中やベンチマーク実行中など、いかにも電源に負担がかかっていそうな時にフリーズや再起動が発生する傾向が高かったのですが、今回の場合はその時とは少し傾向が異なります。
OSの起動に失敗することは一度も無いですし、FF15ベンチも開始さえすれば途中で落ちることはなく最後まで完走しています。
また、現在の電源ユニットは余裕を持って750Wのものを使っており、さらに今回交換したパーツはCPU(APU)、グラボ共に従来のものよりも消費電力が少なくなっていることから、パーツ交換による電源ユニットの容量オーバーというのも考えにくいです。
なお、UEFIに表示される出力電圧を確認すると+12V、+5V、+3.3Vがそれぞれ低めに見えますが、玄人志向によるとATX電源の各出力電圧は±5%(-12Vのみ±10%)の誤差が許容となっており、数値が以下の範囲内であれば正常誤差範囲内ということなので、こちらも問題なさそうです。
- +12V:+11.4~+12.6V
- +5V:+4.75~+5.25V
- +3.3V:+3.14~+3.47V
したがって、電源ユニットが原因とはあまり考えにくいのですが、メモリやマザーボードはこれまで安定動作していたものを流用していますし、もしCPUの故障ならばそれこそPCが起動しなかったり、画面表示の他にも様々なエラーが出るものと考えられます。
(そもそも、ピンの物理的な破損やオーバークロックで過度な電圧をかけたという以外にCPUの故障というのはほとんど聞いたことがありません。)
ということで、これらのパーツの中では電源の劣化が一番可能性が高いと考え、新しく電源ユニットを購入することにしました。
そして新しい電源ユニットに交換して起動した結果・・・ブラックアウトの症状に変化はありませんでした・・・(涙)
メモリの相性もしくは故障
電源ユニットに問題は無かったということで、今度はメモリに疑いをかけました。
メモリの相性問題
よくRyzenはメモリの相性問題が起きやすいと言われていますが、今回はRyzen 7 3700Xでずっと安定動作してきたメモリを流用しています。
また、このメモリの型番を調べると、マザーボードの動作確認リストにもしっかりと記載されていました。
さらに言うと、このメモリは購入直後に行ったmemtest86の検査もパスしています。
という訳で、今回このメモリに問題がある可能性は低いだろうと考えていたのですが、一点だけ引っ掛かることがありました。
それは各メーカーのメモリチップの中でも、特にSK Hynix製のチップはRyzenと相性が悪いという噂です。
そして私がこれまで使っていたメモリのチップをCPU-Zで調べてみると・・・そう、まさにSK Hynix製のチップでした!
ただ繰り返しとなりますが、このメモリはSK Hynixのチップ搭載とはいえ、これまで安定動作してきたものです。
Zen2からZen3へと世代が変わったものの同じRyzenシリーズなので問題ないだろうと思っていたのですが、このSK Hynix疑惑がある以上、マザーボードやCPUよりも、今回のトラブルの原因はメモリである可能性が高いのではないかと考えました。
メモリ構成や設定を変更
現在使用しているメモリはDDR4 3200の16×2枚(32GB)なのですが、まず初めにメモリ構成やUEFIでの設定変更を試してみました。
具体的な検証内容は以下の通りです。
- メモリのスロットを変更
- メモリ1枚挿しに変更
- メモリクロックを2133MHzに設定
- CAS Latencyなどメモリタイミングを遅めに設定
- DRAM Voltageを1.2vから1.25vに設定
これらを全て試してみたのですが、ブラックアウトの症状に変化はありませんでした。
OCCTのVRAMテスト
今回私が購入したRyzen 7 5700GをはじめとするRyzen APUの内蔵GPUは、PCのメインメモリの一部を確保してVRAMとして使用します。
ここでふと思いついたのが、このVRAM容量を変更したらどうなるかという疑問でした。
一応、Ryzen 7 3700XからRyzen 7 5700Gへ換装した直後に動作確認としてOCCTのテストを実行済みなのですが、その時は全てのテスト(それぞれ10分間)でエラーが出ませんでした。
もちろんメモリやVRAMテストも問題なかったのですが、ただこの時はVRAM容量を2GBに設定した状態でのテストでした。
メインメモリが32GBの私のPCでは、UEFIでVRAM容量を最大16GBまで確保することが可能です。
そこで、念のためVRAM容量を16GBに設定した状態で、再度OCCTのメモリとVRAM(内蔵GPU)のテスト(それぞれ10分間)を行ってみることにしました。
まずはメモリのテスト・・・問題なし。
次にVRAMのテスト・・・エラーが発生しました!
念のため一度再起動して再びVRAMテストを行ってみましたが、やはりエラーが発生します。
アクセスしているのは同じメモリなのに、メモリのテストはOKでVRAMテストはNGというのは不思議ですが、これはやはりメモリの相性問題の可能性が浮上してきました。
なお、念のためグラボ(Radeon RX 6600XT)のVRAMテストも行いましたが、こちらは問題ありませんでした。
新しいメモリに交換
いよいよメモリが怪しくなってきたので、仕方なく新たにメモリを購入することにしました。
スペックはこれまで使ってきたメモリと同じDDR4 3200の16×2枚(32GB)ですが、SK Hynix製チップのものは避けて、今回はMicron製チップのものを選びました。
メモリを入れ替え、祈るような気持ちで再びOCCTのVRAM(内蔵GPU)テストを行ってみます。
結果は・・・エラーが出なくなりました!
そして新しいメモリに交換してから数日経過しましたが、ここまでフリーズやブラックアウトは一度も発生してません。
信頼性モニターも確認してみると、これまで毎日のように発生してきたエラーや警告が、メモリ交換後は綺麗さっぱり消えています!
トラブル解決後の感想
幸運にもこれまで一度もメモリの相性トラブルに見舞われなかったため、今回のトラブル解決には本当に苦労しました。
特にAPUのVRAMに関わるメモリのトラブルはネット上にもほとんど情報が無かったため、試行錯誤の連続でした。
上にも書きましたが、同一のメモリなのにOCCTのメモリテストはOKで、VRAMテストはNGというのは、こんな事もあるのかといった感じです。
また、今回の原因は内蔵GPUのVRAMだったにも関わらず、内蔵GPUを無効にしてグラボのみを使用しても、同じようにブラックアウトが発生するというのも事態を余計にややこしくしました。
今回のトラブルを踏まえて、教訓となった事は以下の通りです。
- メモリ購入の際はチップのメーカーを確認する(特にRyzenの場合はSK Hynix製チップのメモリを避ける)
- マザーボードメーカーの動作確認リストに記載されたメモリでも、相性トラブルとなる可能性はある
- 同じ種類のCPUでも、世代が変わればこれまで使用してきたメモリとの相性トラブルが起こる可能性がある
- APUを導入する場合は、内蔵GPUのVRAM容量を最大限まで確保した上でOCCTのVRAMテストを行う
なお、今回私が新たに購入したメモリはCFD W4U3200CM-16GRです。
従来使ってきたメモリと型番が似ていますが、こちらはCrucialのメモリで、チップはMicron製となっています。
ちなみに、これと同じようなメモリでCT2K16G4DFRA32Aという製品もありますが、販売元がCFDかCrucialかの違いだけで中身は同じCrucialのメモリらしいです。
(ただしW4U3200CM-16GRの方はCFDの1か月の交換保証が付きます。)
以下は同シリーズの16GB(8GBx2)モデルです。
コメント
こんばんは。
私も両方AMDにして、同じ症状で悩んでいたので、
メモリを違うものに変えてみます。
今までintel系だったときはこういうことが起きなかったので大変助かりました。。