根據我的 powertop (在 5.3.1 核心上):
Power est. Usage Events/s Category Description
...
3.85 W 7,7 ms/s 437,0 Timer tick_sched_timer
筆記型電腦上的 3.85W 功率很大,有時甚至高達 6W。我還沒有在早期核心(5.0.x)上看到過這個,有人知道如何減少功耗嗎?
答案1
tick_sched_timer
是Linux核心的CPU調度程式的一部分。在這種情況下,它可能表明您的系統上有很多context switches
和cpu-wakeups
。
如果您看到它使用大量電量,則可能是您系統上的某些內容導致大量context switches
和/或cpu-wakeups
. -- 這可能與驅動程式有關;例如 GPU 驅動程式、藍牙、wifi 等 - 它具有某種激進的更新間隔,或者驅動程式可能會觸發許多硬體中斷...但是,它也可能是由某些 userpsace 軟體引起的。也會使這些數字有點偏差。
您可以透過在不使用時停用驅動程式(例如藍牙)(或如果未使用,將其完全列入黑名單)來取得一些成功。或更改 cpu 調節器和/或使用各種節能方法/策略...根據核心的配置方式,減少計時器滴答也可以節省電力。例如,某些核心可能是使用 建構的CONFIG_HZ_1000=y
,而其他核心可能是使用 建構的CONFIG_HZ_250=y
。後者應該可以節省一些電力。
Powertop 可能會告訴您原因為何;但這tick_sched_timer
並不是電池耗盡的根本原因(這只是一個症狀)。它可能是其他執行緒、任務或流程;在核心中或可能在用戶空間中。
答案2
聚會有點晚了,但透過調整我的設置,我的使用率從平均 2W 以上下降到 1 以下tlpui
。
轉到處理器並將 SCHED_POWERSAVE 選項勾選為開啟。您也可以對該類別中的許多 CPU 調整進行調整。
對於 Intel CPU:前往圖形並將 INTEL_GPU_FREQ 調整為較低的值,請務必事先檢查可用的值sudo tlp-stat -g
。
對於 AMD CPU:轉到圖形並將 RADEON_POWER_PROFILE_ON_BAT 和 RADEON_DPM_STATE 分別設定為低電量和電池電量。
禁用藍牙似乎也有幫助。
顯然,這並不理想,因為性能會降低很多,但如果您更重視電池壽命而不是性能,那麼就這樣做。