Strange random freezing/reboots w/ AMD Ryzen 5950X CPU - solved!

Posted by SimplyFreeSpirited@reddit | buildapc | View on Reddit | 46 comments

tldr; - Disable PBO in BIOS, set a fixed CCD0/CCD1 ratio (i.e. 43.00 for 4.3 GHz) (disabling "curve optimization"), and most importantly - set a fixed CPU voltage of 1.25v (a safe voltage for idle/load). Ryzen's dynamic voltage adjustment causes a reboot with older revision 5950X CPUs when the voltage drops too low.

I was having a weird issue where my Ryzen 5950X PC would randomly freeze or reboot in Windows 10. No events logged in Event Viewer either. Windows (or Linux) would freeze during bootup afterwards, before the login screen appeared. This was happening on any storage media I used (nvme SSD, USB stick, etc.). I tested RAM numerous times - no errors. I disabled XMP and ran memory at very conservative settings. I even disabled every performance feature in BIOS - PBO, boosts, etc. - and ran the CPU at base clock speed. The issue persisted. About every week or so, the computer would randomly reboot, regardless of load. This would typically happen in the middle of the night when the system was idle.

I use all high-quality parts and the power supply is no exception. No issues noted with power delivery or other components. Everything is clean and well kept. Drivers and firmware all up to date as well.

The original fix was to load a "watercooled OC" preset in Asus BIOS. That allowed Windows to load without freezing and no more random reboots. However, the processor would easily hit 95 deg. C under load and the system would reboot under thermal constraint. Not good. So I modified the preset's settings to run the processor cooler. Then the issue began again.

After monitoring this issue for over a month, I witnessed what was happening - as the processor's voltage was auto-adjusted continuously, between below 1v and about 1.3v, the reboot or freeze would occur if the voltage went too low. I don't recall the exact threshold but it was about 0.90v. I watched this occur in live time using Ryzen Master.

Somewhere I read that the older Ryzen 5950X CPUs (the revision B0 stepping 0) aren't as stable as newer revisions/steppings. Lo and behold, mine is a revision B0 stepping 0. I have another 5950X system that has a newer stepping (2) that isn't experiencing this issue. Makes sense now.

The proven fix (system running stable 24/7 now for over a month):
- Set CPU core VID (voltage) to a fixed 1.25v, which is safe for 5950X.
- Set CCD CCX0/CCX1 ratios to 43.00, which keeps the CPU at a fixed 4.3 GHz. That may vary for you based on the "silicone lottery"; you may be able to run faster. 4.3 GHz. is the average speed mine operates at and I'm happy with it.
- Set the PPT/TDC/EDC limits manually in BIOS. PPT: 142. TDC: 95. EDC: 140. These are the default standard limits for 5950X. Asus motherboard tends to be aggressive with these so it's good to set them as fixed for stable operation.
- Set PBO "overdrive scalar" to 1X.
- Disable "PBO Fmax Enhancer" or any other proprietary boost algorithms (Asus, etc.).
- Leave "curve optimizer" as "auto". This shouldn't matter as the scalar is 1X and voltage/etc. will now be set to fixed settings.
- "CPU boost clock override" set to "disabled".
- "Global C-state control" set to disabled, to help prevent instability from cores being put to "sleep".

Note that in Asus (and possibly other) BIOS configurations, you may have to enter these settings within multiple screens and sections. The Asus BIOS in particular is a bit of a cluster.

Use Ryzen Master to monitor the temps and such.

Hope this helps anyone having issues with 5950X stability (there's a lot out there from what I see).