Friday, July 12th 2019

Reports of Ryzen 3000 High Idle Voltage Exaggerated, a Case of the "Observer Effect"

With AMD's 3rd generation Ryzen processors finally falling into the hands of PC enthusiasts, many early-adopters are taking to tech communities such as ours, to share their experiences with others. A trend appears to be emerging of users reporting higher-than-usual voltages for these processors when idling. AMD investigated this phenomenon, and declared this to be a non-issue. Apparently, most modern CPU monitoring utilities cause what is known as "the observer effect:" the process of measuring the processor's load itself causes load on the processor.

In case of the Ryzen "Matisse" processors, monitoring software appear to be polling each processor core for load by sending it instruction at a high rate of speed - sending them a workload of 20 ms every 200 ms. This causes the processor's embedded firmware to think that the cores are being subjected to workload, and it responds by increasing the clock-speeds, and proportionately voltages of all CPU cores. Monitoring software poll each CPU core, and so core voltages are raised across the chip.
"We have determined that many popular monitoring tools are quite aggressive in how they monitor the behavior of a core. Some of them wake every core in the system for 20 ms, and do this as often as every 200 ms. From the perspective of the processor firmware, this is interpreted as a workload that's asking for sustained performance from the core(s). The firmware is designed to respond to such a pattern by boosting: higher clocks, higher voltages," stated Robert Hallock, AMD's head of technical marketing for processors. "So, if you're sitting there staring at your monitoring tool, the tool is constantly instructing all the cores to wake up and boost. This will keep the clock-speeds high, and the corresponding voltages will be elevated to support that boost. This is a classic case of observer effect: you're expecting the tool to give valid data, but it's actually producing invalid data by virtue of how it's measuring," he added.

Hallock recommended CPU-Z to be most accurate at measuring CPU voltages without causing the observer effect. In a screenshot shared on Reddit, Hallock showed that when twiddling its thumbs, a Ryzen 9 3900X can drop its voltages well below 0.4 V. To demonstrate his use-case, Hallock configured his machine with the latest Windows 10 May 2019 Update (version 1903), which has greater awareness of AMD "Zen" processor multi-core topology; the latest BIOS on his ASUS Crosshair VIII Hero motherboard, and AMD Chipset drivers 1.07.07, which include the latest version of the "Ryzen Balanced" Windows power-plan.

AMD highly recommends Ryzen 3000 users to use the latest version of Chipset drivers, and enable the Ryzen Balanced power-plan, which adjusts the rate at which the processor and the OS talk to each other on performance-output from the processor. With Ryzen Balanced, this is set at 1 ms, whereas the default "Balanced" power-plan provided by Microsoft polls the processor only once in 15 ms, giving users the illusion of processor voltages having "settled down." This is a sub-optimal scenario for Ryzen processors, which like to tweak their clock-speeds every 1 ms, responding to workloads better.

Hallock also prescribed a few tips to measure voltages correctly: 1, to not run multiple monitoring utilities simultaneously, which amplifies the observer effect; 2. close apps such as your motherboard's "command center" utility, Corsair iCue, NZXT CAM, etc., which too are monitoring tools; 3. Set BIOS voltages to their default or Auto values, except those voltage domains that are adjusted by your memory's XMP profile; 4. keep your chipset software, Windows version (1903 recommended), and motherboard BIOS version up to date; and 5. don't worry if you don't see <0.5 V values, <1 V is the desired idle range.
Show 43 Comments