Normally on a Pi4 we pick a suitable voltage (based on silicon characteristics) on boot, and stick with it whether busy or idle.
But if all clocks in the system (e.g. arm/core/v3d/isp/h264/hevc) are below maximum you can reduce the voltage and get a saving in power and temperature. The new firmware implements this.
The cpufreq driver now has multiple frequency points (1500, 1000, 750, 600), so moderate loads (e.g. video playback in browser) may choose 1000MHz (bumping to 1500MHz whenever we become busier) which allows a lower voltage and so a lower temperature.
Also when we start to throttle, the voltage can be reduced at 1000MHz allowing the temperature to drop more quickly, and so hitting 600MHz when throttling is rarer.
We'd like to get this into the stable firmware, but it needs testing first (and we've scared away many of the rpi-update testers...)
So, volunteers are wanted. Simplest test is just to rpi-update and let us know if anything becomes less stable or performant.
If you want to look more closely, bcmstat is very useful. I run it with a config of
Code: Select all
MCxgpd1 Tye