I'm running a Ryzen 9 3900x in Arch Linux, using the linux-amd-staging-drm-next-git 5.3.839842.40cc64619a25-1 kernel.
I am seeing some anomalous behaviour:
I have a Scythe Fuma 2 CPU air cooler which I reinstalled several times to make sure it was installed correctly. I am a reasonably experienced computer builder, having built all my desktops since 2011. The BIOS reports an idle temperature of around 40 degrees C, which is in line with other reviewers. My room temperature is around 20 to 25 degrees C.
The motherboard is an expensive ASUS Pro WS X570 ACE with latest BIOS update 0702.
I have tried with two different power supplies, a Seasonic Focus Plus 750 W Gold and an EVGA SuperNova 850 P2 Platinum, with the same results. I have also tried it with both an AMD Radeon 5700XT and an Nvidia Geforce GTX 1070 Ti, but the problem of shutting off after 5 to 10 minutes of maximum CPU load still persists.
It seems the problem was likely due to a faulty motherboard. I switched to a new ASUS PRIME X570-P, which is a much cheaper motherboard than the previous Pro WS X570 ACE, and now I am able to do compilation all day with a rock solid system.
I was able to monitor temperatures in Linux using Zenpower:
https://github.com/ocerman/zenpower
along with compiling a kernel with this patch: [1/2] x86/amd_nb: Add PCI device IDs for family 17h, model 70h - Patchwork
Thanks to Zenpower I was able to verify that, with the previous motherboard, shutoff happened at around 70 degrees C. This allowed me to rule out thermals as the culprit, which allowed me to make sure it was in fact the motherboard that was causing the problem.
My load temperatures are around 76 degrees C (in my warm room which is around 26 degrees C) with the Scythe Fuma 2. Idle temperatures are around 39 degrees C as per before.
I will run more stress tests and see if any more strange behaviours appear.
Depending on your board, you may have a whole array of different voltage settings available to you. You only need the Vcore (sometimes CPU core).
This setting can be dangerous. Voltage generates heat, and heat kills components. Do NOT go over 1.45v. 1.4v would be the maximum safe voltage for regular daily use.
You should start out around 1.325v or 1.35v. That will probably be enough to reach a clock speed around 3.8GHz.
Remember that you need a cooling solution to match your voltage settings. Don't try to hit 1.4v with the stock cooler. The chip will heat up way too fast. That territory is reserved for high end air coolers and liquid.
https://linuxconfig.org/how-to-overclock-your-amd-ryzen-cpu-on-linux