I currently run Qubes on a Ryzen 5600u machine. The laptop has a 60Wh battery, which serves around 15 hours of battery life on windows, when I only do slight browsing and moderate text editing.
With QubesOS, if I don’t limit its performance and do the same things as on Windows, it will eat around 15% to 20% of the battery per hour. That’s bearable, but not perfect. I well know that I have to pay the price for advanced security, but more battery life is always better, isn’t it?
So I want to discuss how to extend the battery life, with less impact on performance.
CPU tuning:
For myself, I’m running ryzenadj to control the CPU’s power. I found that limiting it to 2w will make it “just run”, 3w is usable but everything is quite slow, 5w is good enough for smooth typing in Firefox and Onlyoffice, and 7w can provide an experience similar to that of an old machine (x230?).
A low long-term power consumption and high enough peak performance are preferable. I set fast-limit to 7w, slow-limit to 2.5w, slow-time to 30 seconds. So I can run at 7w for around 10 seconds before it hits the boundary and drop to 2.5w (2.5 * 30 / 7=10 + 5/7). That is enough for things like VM starting, or website finishing loading.
Question 1: How about the power requirements of Intel Alder Lake-P/U and AMD 6000u series?
Question 2: Can we increase the scaling speed, for example using xenpm, to make power consumption drop faster when load has been finished? If I don’t set fast-limit, ACPI reported power will go up to ~15w, and decrease slowly after it’s below 8w. If I set fast-limit, it will go up to ~8w, and decrease slowly after it’s below 6w.
Whole system tuning
Through xfce sensor viewer, I find that the whole machine’s idle power consumption is around 5w. Typing in Firefox requires ~6w. Typing in gedit requires ~5.5w. This is good enough for daily usage.
Question 1: I found that battery power drops to around 3.8w for a few seconds after the AC power being removed. Then it gracefully increases to around 5w. Why is there a power valley? If the laptop can run at that power,
why is the idle power never able to reach that?
Edit: Closing keyboard backlight can save ~0.7w. So idle power with the screen on is ~4.2w, with the screen off is ~3.1w. This is definitely good enough, even for a regular linux install.
Question 2: Since Qubes assign different devices to Appvms, should I enable power-savng settings in those Appvms?