01-11-2018 06:54 AM
We are trying to optimize a Petalinux installation for power. I have read the various Xilinx wiki pages on the subject, and so far have tried the suspend state, as well as decreasing the processor and DDR clock frequencies.
However, these strategies save much less power than expected. We measure 6W of power draw at our benchtop power supply during idle. Lowering the CPU frequency with cpufreq from 666MHz to 41.667MHz saves maybe 0.15W. Lowering the DDR frequency in the Vivado project from 533MHz to 303MHz also saves maybe 0.15W. Suspend is slightly better, but power draw is still 4.8W.
Another observation that confuses us is that our power draw is exactly the same whether our system load (as measured by top in Petalinux) is 0% or 50% (100% of 1 of 2 cores).
Are we missing something when it comes to this? Xilinx sources such as https://www.xilinx.com/video/soc/zynq-7000-low-power-solutions.html @ 19:30 show figures close to 1W. I should note that our PL is not active during the above measurements.
Thanks for any suggestions.
01-11-2018 09:27 AM
01-12-2018 09:22 AM
For posterity's sake: our measurements did not properly isolate the Zynq from our carrier card.
Measuring just the Zynq show a consumption of 2.8W, which is very close to the 2.6W predicted by Vivado's power tools.
In suspend this comes down to ~1.5W, which is still higher than what's advertised in the documentation.
It's still very strange that power consumption does not correlate with cpu use at all. Petalinux's idle must be NOPs or something similar.