通过 btusb 和 tick_sched_timer 的高功耗

Sno*_*ard 7 battery dell power-management

最近我注意到我的笔记本电脑电池很差,所以我检查了 powertop 的功耗。我做什么都无所谓。最重要的过程是

Radio device: btusb
tick_sched_time
Run Code Online (Sandbox Code Playgroud)

它们一起消耗几乎 15-17 W 的功率。

这些服务是什么,我该如何解决这个问题。我的笔记本电脑是戴尔的 Precision 5530。

小智 3

tick_sched_time

tick_sched_timer 是 CPU 调度程序的一部分,通常意味着您有大量的上下文切换和 CPU 唤醒。

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

我面临的问题

我使用的是 ubuntu 20.10,tick_sched_timer 在powertop.

我尝试过修复

您可以尝试以下步骤 -它对我来说非常有效

  1. 安装 TLPsudo apt install tlp
  2. 安装 TLPUI 参考:https://github.com/d4nj1/TLPUI/wiki/Install-instructions#ubuntudebian-family
  3. 打开 TLP UI 并调整 GPU/CPU 周期中的一些值。(检查下图)

TLP UI - 图形部分

您可能会看到 GPU 最大频率和加速频率设置为最大。您可以根据需要更改这些值。

要检查您的处理器支持什么速度,请键入sudo tlp-stat -g。这将为您提供可用的频率(我将它们设置为电池的最小值)

此外,您也可以更改处理器缩放频率。为了检查可用的频率类型sudo tlp-stat -p。这将显示支持的最小值和最大值。

我还调整了一些东西,比如动画、启动、chrome 和其他应用程序的一些后台进程。

所有这些变化将tick_sched_time值降至 400mW 左右(平均)。


Win*_*nix 2

如果您不使用蓝牙(功耗较高),只需将其关闭即可。

要暂时关闭蓝牙,请使用rfkill

$ sudo rfkill block bluetooth
Run Code Online (Sandbox Code Playgroud)

要永久关闭蓝牙,请创建udev规则:

$ sudo -H gedit /etc/udev/rules.d/50-bluetooth.rules
Run Code Online (Sandbox Code Playgroud)

然后在空文件中插入以下行:

# disable bluetooth
SUBSYSTEM=="rfkill", ATTR{type}=="bluetooth", ATTR{state}="0"
Run Code Online (Sandbox Code Playgroud)

保存文件并存在。

请访问上面的链接以获取更多省电提示。

  • 谢谢您的帮助。我的鼠标通常使用蓝牙,因此完全禁用它不是一个选择。会不会是司机出了什么问题?您还有tick_sched_timer的解决方案吗? (3认同)
  • 终止该进程有帮助,但对我来说这不是一个好的解决方案,因为我真的依赖蓝牙。是否有一个选项可以找出该过程的实际问题,并可能以安全的方式重新安装该软件包。 (2认同)