I've installed TLP on my Lenovo ThinkBook laptop and was wondering if there are additional steps I can take to extend the battery life when using the laptop unplugged.
Could you please share more tips and tricks for maximizing battery life on Linux laptops?
powertop is a cool tool that can analyze your machine and provide a list of suggested power optimizations
This is the way. You need to check whether CPU and package are mostly in the highest C-states they can be. If not, you've got a task or IO device causing a lot of wasted power.
Lowering screen brightness, turn off keyboard back lighting.
But thing is, on some devices, certain power states just may not work.
For more power savings, you can undervolt your CPU if it supports it. On some CPUs, it can result in significant power savings.
Undervolting requires a lot of testing to make sure each core is stable under all conditions. There is no guarantee that a CPU will undervolt well though. Two identical CPUs can have significantly different results.
undervolting can also improve performance, depending on boost behaviour. it feels like you got a better binned chip.
I don't see how undervolting would result in power savings on modern CPUs if you're not up against clock limits as the CPU would simply boost higher.
Jury’s out on disabling Javascript unless you only visit the same sites again and again. Since installing NoScript, I have to load and reload every site multiple times while I guess which domains to allow in order for the site to actually work. I’ve white listed the bare minimum on web sites I use frequently, but it’s still a daily occurrence that I visit a site I haven’t been to before.
On modern CPUs they’re designed to “race to idle”. Consequently when they’re not idle they’re not very efficient. The biggest change that improves my battery life is adjusting how I do certain things. Instead of trying to slow things down even more to save power I just try to get them to finish quicker so my CPU can get back to idle (and efficient) faster.
Intel is really awful with this. AMD is better but slowly getting to Intel levels. E cores might change things up a bit, but I don’t have experience with them yet.
Intel is really awful with this. AMD is better but slowly getting to Intel levels.
I don't follow, I thought AMD was less efficient. You say it's the other way around but it's getting worse? Or I'm reading it wrong?
In the bios of many thinkpads there are options about powering USB ports while the machine is suspended or powered off. I disable that, because I want battery life even when suspended. Also an option about some windows suspend or S3 suspend, I chose S3 suspend, but don't have clear evidence this choice makes a difference.
I don't think that you're losing any power with the "usb ports powered" option on. It's just there if you want to use your (sleeping) laptop as a $1000 power bank to charge your phone.
Personally, I turn it off just because I would rather use a $20 battery pack instead of wearing out my laptop.
yeah, ok. So I just went back to test the S3 Sleep power state option, and switched it to the Windows'y one, which the BIOS says Linux supports and it does, but now the machine seems to still burn battery when it's suspended ... So, I have found the larger culprit.
We are well into the age of "OEMs dgaf if S3 works". Windows has not used it since sometime around 7, so it's been bitrotting in every vendor's firmware. With some models, you may have S3 working on day one, but a firmware update kills it and that's too bad.
S0ix idle is actually quite nice when you get it working, but when it is not the tools to diagnose it are terrible. The terminology around sleep states are also terrible, (what's a package or core or platform C state? Could one of them find a different letter?). I have gone over the arch wiki, and DELETED Intel documents so many times…
I use Auto CPU Freq on my T480 and am satisfied so far.
I have a laptop with USB-C charging and stash chargers all around the house so I am always plugged-in.
Works great, the battery life is infinite.