High power consumption through btusb and tick_sched_timer

Recently I noticed that my laptops battery is very worse so I checked powertop for the power consumption. Doesn't matter what I do. The the top processes are

Radio device: btusb
tick_sched_time

Together they consume almost 15-17 W of power.

What are these services and how can I fix this issue. My laptop is a Precision 5530 from Dell.


If you are not using bluetooth (higher power consumption) you can simply turn it off.

To turn off bluetooth only temporarily, use rfkill:

$ sudo rfkill block bluetooth

To permanently turn off bluetooth create a udev rule:

$ sudo -H gedit /etc/udev/rules.d/50-bluetooth.rules

Then in the empty file, insert these lines:

# disable bluetooth
SUBSYSTEM=="rfkill", ATTR{type}=="bluetooth", ATTR{state}="0"

Save the file and exist.

Visit the link above for even more power saving tips.


tick_sched_time

tick_sched_timer is part of the CPU scheduler and usually means you have lots of context switches and CPU wake-ups.

Ref: https://www.reddit.com/r/linuxquestions/comments/igt39n/tick_sched_timer/

Issue I was facing

I was using ubuntu 20.10 and tick_sched_timer was taking around 1.5 to 2 W in powertop.

Fix I tried

You can try the below steps - It worked pretty well for me.

  1. Install TLP sudo apt install tlp
  2. Install TLPUI Ref: https://github.com/d4nj1/TLPUI/wiki/Install-instructions#ubuntudebian-family
  3. Open TLP UI and tweak some values in GPU/CPU Cycles. (Check the image below)

TLP UI - Graphics Section

You might see that GPU max and boost frequencies are set to max. You can change those values as per your need.

To check what speed does your processor support type sudo tlp-stat -g. This will give you available frequencies (I set them to a minimum on battery).

Also, you can change Processor Scaling Frequency too. In order to check the available frequencies type sudo tlp-stat -p. This will show min and max values supported.

I also tweaked some things like animations, startup, some background processes of chrome and other applications.

All these changes dropped tick_sched_time value to around 400mW (average).