RYZEN 3000 RANDOM BUG

I am a developer and I am on a lot of forums. One serious fault that has surfaced deals with random numbers.

RDRAND is an instruction that has been around since Broadwell. AMD Zen also supports it.

CPUID can determine if the flag is set. Unfortunately, unpatched Ryzen 3000 says “yes” to the CPUID 01H call, sets the carry bit indicating it has successfully created the most artisanal, organic high-quality random number possible… and gives you a 0xFFFFFFFF for the “random” number, every single time.

I have been aware of this defect which is a major problem for a secure system. It breaks std::random() as well which is the C++ call to the CPU instruction. The chilling effect on security is horrifying.

In advanced calculus random numbers are used for numerical methods to solve some difficult partial differential equations. Monte Carlo methods are usually studied in graduate level honors math.

AMD needs to make a new stepping for the faulty CPU which is the only real way to fix the problem. No microcode will fix the logic faults.

Destiny 2 is known to be sensitive to this fault which causes the game to crash. Its not known what other programs use RDRAND but any program that does will fail.