TLP 真的有助於延長電池壽命嗎?

TLP 真的有助於延長電池壽命嗎?

我正在使用 TLP 進行電源管理。但我懷疑它並不能真正幫助延長運行 Ubuntu 14.04 的 Dell Inspiron 5346 的電池壽命,因此我sudo tlp-stat在顯示器亮度最小的情況下運行了一次,在顯示器亮度最大的情況下運行了一次。這兩次我都得到相同的電流消耗,如下所示。

/sys/class/power_supply/BAT1/current_now                    =    882 [mA]

所以我的問題如下。 TLP 真的有助於管理和延長電池壽命嗎?其次,如果沒有,我的筆記型電腦有哪些真正好的替代品?

TLP 日誌:

--- TLP 0.8 --------------------------------------------

+++ Configured Settings: /etc/default/tlp
TLP_ENABLE=1
TLP_DEFAULT_MODE=AC
DISK_IDLE_SECS_ON_AC=0
DISK_IDLE_SECS_ON_BAT=2
MAX_LOST_WORK_SECS_ON_AC=15
MAX_LOST_WORK_SECS_ON_BAT=60
SCHED_POWERSAVE_ON_AC=0
SCHED_POWERSAVE_ON_BAT=1
NMI_WATCHDOG=0
ENERGY_PERF_POLICY_ON_AC=performance
ENERGY_PERF_POLICY_ON_BAT=powersave
DISK_DEVICES="sda sdb"
DISK_APM_LEVEL_ON_AC="254 254"
DISK_APM_LEVEL_ON_BAT="128 128"
SATA_LINKPWR_ON_AC=max_performance
SATA_LINKPWR_ON_BAT=min_power
PCIE_ASPM_ON_AC=performance
PCIE_ASPM_ON_BAT=powersave
RADEON_POWER_PROFILE_ON_AC=high
RADEON_POWER_PROFILE_ON_BAT=low
RADEON_DPM_STATE_ON_AC=performance
RADEON_DPM_STATE_ON_BAT=battery
RADEON_DPM_PERF_LEVEL_ON_AC=auto
RADEON_DPM_PERF_LEVEL_ON_BAT=auto
WIFI_PWR_ON_AC=1
WIFI_PWR_ON_BAT=5
WOL_DISABLE=Y
SOUND_POWER_SAVE_ON_AC=0
SOUND_POWER_SAVE_ON_BAT=1
SOUND_POWER_SAVE_CONTROLLER=Y
BAY_POWEROFF_ON_BAT=0
BAY_DEVICE="sr0"
RUNTIME_PM_ON_AC=on
RUNTIME_PM_ON_BAT=auto
RUNTIME_PM_ALL=1
RUNTIME_PM_DRIVER_BLACKLIST="radeon nouveau"
USB_AUTOSUSPEND=1
USB_BLACKLIST_WWAN=1
RESTORE_DEVICE_STATE_ON_STARTUP=0

+++ System Info
System         = Dell Inc. A02 Inspiron 5548
BIOS           = A02
Release        = Ubuntu 14.04.3 LTS
Kernel         = 3.16.0-53-generic #72~14.04.1-Ubuntu SMP Fri Nov 6 18:17:23 UTC 2015 x86_64
/proc/cmdline  = BOOT_IMAGE=/boot/vmlinuz-3.16.0-53-generic.efi.signed root=UUID=ff176661-2ba0-4348-9143-535a788862b4 ro quiet splash vt.handoff=7
Init system    = upstart

+++ System Status
TLP power save = enabled
power source   = battery

+++ Processor
CPU Model      = Intel(R) Core(TM) i5-5200U CPU @ 2.20GHz

/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq  =   500000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq  =  2700000 [kHz]

/sys/devices/system/cpu/cpu1/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu1/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq  =   500000 [kHz]
/sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq  =  2700000 [kHz]

/sys/devices/system/cpu/cpu2/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu2/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq  =   500000 [kHz]
/sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq  =  2700000 [kHz]

/sys/devices/system/cpu/cpu3/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu3/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq  =   500000 [kHz]
/sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq  =  2700000 [kHz]

/sys/devices/system/cpu/intel_pstate/min_perf_pct      = 18
/sys/devices/system/cpu/intel_pstate/max_perf_pct      = 100
/sys/devices/system/cpu/intel_pstate/no_turbo          = 0

x86_energy_perf_policy: program for your kernel not installed.

/proc/sys/kernel/nmi_watchdog                          = 0

+++ Undervolting
PHC kernel not available.

+++ Temperatures
CPU temp               =    54 [°C]
Fan speed              = (not available)

+++ File System
/proc/sys/vm/laptop_mode               =     2
/proc/sys/vm/dirty_writeback_centisecs =  6000
/proc/sys/vm/dirty_expire_centisecs    =  6000
/proc/sys/vm/dirty_ratio               =    20
/proc/sys/vm/dirty_background_ratio    =    10
/proc/sys/fs/xfs/age_buffer_centisecs  = (not available)
/proc/sys/fs/xfs/xfssyncd_centisecs    = (not available)
/proc/sys/fs/xfs/xfsbufd_centisecs     = (not available)

+++ Storage Devices
/dev/sda:
          Model     = ST1000LM024 HN-M101MBB                  
          Firmware  = 2BA30003
          APM Level = 128
          Status    = active/idle
          Scheduler = deadline

        SMART info:
            4 Start_Stop_Count          =      109 
            5 Reallocated_Sector_Ct     =        0 
            9 Power_On_Hours            =       87 [h]
          193 Load_Cycle_Count          =     2731 
          194 Temperature_Celsius       =       34 (Min/Max 20/44)  [°C]
          241 Total_LBAs_Written        =    0.004 [TB]


+++ SATA Aggressive Link Power Management
/sys/class/scsi_host/host0/link_power_management_policy  = min_power
/sys/class/scsi_host/host1/link_power_management_policy  = min_power
/sys/class/scsi_host/host2/link_power_management_policy  = min_power

+++ PCIe Active State Power Management
/sys/module/pcie_aspm/parameters/policy = default (using bios preferences)

+++ Intel Graphics
/sys/module/i915/parameters/powersave        =  1 (enabled)
/sys/module/i915/parameters/enable_rc6       =  1 (enabled)
/sys/module/i915/parameters/enable_fbc       = -1 (use per-chip default)
/sys/module/i915/parameters/lvds_downclock   =  0 (disabled)
/sys/module/i915/parameters/semaphores       = -1 (use per-chip default)

+++ Wireless
bluetooth = off (software)
wifi      = on
wwan      = none (no device)

hci0(btusb)         : not connected
wlan0(iwlwifi)      : connected, power management = on

+++ Audio
/sys/module/snd_hda_intel/parameters/power_save            = 1
/sys/module/snd_hda_intel/parameters/power_save_controller = Y

+++ Runtime Power Management
device classes   = all
device blacklist = (not configured)
driver blacklist = radeon nouveau

/sys/bus/pci/devices/0000:00:00.0/power/control = auto (0x060000, Host bridge, no driver)
/sys/bus/pci/devices/0000:00:02.0/power/control = auto (0x030000, VGA compatible controller, i915)
/sys/bus/pci/devices/0000:00:03.0/power/control = auto (0x040300, Audio device, snd_hda_intel)
/sys/bus/pci/devices/0000:00:14.0/power/control = auto (0x0c0330, USB controller, xhci_hcd)
/sys/bus/pci/devices/0000:00:16.0/power/control = auto (0x078000, Communication controller, mei_me)
/sys/bus/pci/devices/0000:00:1b.0/power/control = auto (0x040300, Audio device, snd_hda_intel)
/sys/bus/pci/devices/0000:00:1c.0/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.2/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.3/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.4/power/control = auto (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1d.0/power/control = auto (0x0c0320, USB controller, ehci-pci)
/sys/bus/pci/devices/0000:00:1f.0/power/control = auto (0x060100, ISA bridge, lpc_ich)
/sys/bus/pci/devices/0000:00:1f.2/power/control = auto (0x010601, SATA controller, ahci)
/sys/bus/pci/devices/0000:00:1f.3/power/control = auto (0x0c0500, SMBus, no driver)
/sys/bus/pci/devices/0000:02:00.0/power/control = auto (0x020000, Ethernet controller, r8169)
/sys/bus/pci/devices/0000:03:00.0/power/control = auto (0x028000, Network controller, iwlwifi)
/sys/bus/pci/devices/0000:04:00.0/power/control = auto (0x038000, Display controller, fglrx_pci)

+++ USB
autosuspend        = enabled
device whitelist   = (not configured)
device blacklist   = (not configured)
wwan blacklist     = enabled

Bus 001 Device 002 ID 8087:8001 control = auto, autosuspend_delay_ms =     0 -- Intel Corp.  (hub)
Bus 001 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms =     0 -- Linux Foundation 2.0 root hub (hub)
Bus 003 Device 001 ID 1d6b:0003 control = auto, autosuspend_delay_ms =     0 -- Linux Foundation 3.0 root hub (hub)
Bus 002 Device 004 ID 1bcf:2b8a control = auto, autosuspend_delay_ms =  2000 -- Sunplus Innovation Technology Inc.  (uvcvideo)
Bus 002 Device 003 ID 0bda:0129 control = auto, autosuspend_delay_ms =  2000 -- Realtek Semiconductor Corp. RTS5129 Card Reader Controller (rtsx_usb)
Bus 002 Device 002 ID 8087:07dc control = auto, autosuspend_delay_ms =  2000 -- Intel Corp.  (btusb)
Bus 002 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms =     0 -- Linux Foundation 2.0 root hub (hub)

+++ Battery Status
/sys/class/power_supply/BAT1/manufacturer                   = SDI
/sys/class/power_supply/BAT1/model_name                     = DELL VVMKC52C
/sys/class/power_supply/BAT1/cycle_count                    = (not supported)
/sys/class/power_supply/BAT1/charge_full_design             =   3900 [mAh]
/sys/class/power_supply/BAT1/charge_full                    =   3900 [mAh]
/sys/class/power_supply/BAT1/charge_now                     =    689 [mAh]
/sys/class/power_supply/BAT1/current_now                    =    882 [mA]
/sys/class/power_supply/BAT1/status                         = Discharging

答案1

當然可以,但這取決於你的硬體......

tlp-stat 顯示的內容目前_現在是 ACPI-BIOS 從電池組電子裝置取得的準確值,並將其傳送給 Linux 核心。所以這裡 tlp-stat 中沒有解釋或轉換。

即使使用現代 LED 背光顯示器,最小和最大亮度之間也存在約 2-4 W 的典型差異。

結論:電池組-ACPI-BIOS-核心之間出現問題;導致 current_now 的讀取錯誤。

另一個提示:您的筆記型電腦有兩個圖形晶片:

/sys/bus/pci/devices/0000:00:02.0/power/control = auto (0x030000, VGA compatible controller, i915)
/sys/bus/pci/devices/0000:04:00.0/power/control = auto (0x038000, Display controller, fglrx_pci)

整合的(Intel,i915 驅動程式)和獨立的(AMD,fglrx 驅動程式)。兩個圖形晶片的影響是巨大的– 可能遠超過 TLP 所能節省的金額。您應該禁用其中之一(最好是 AMD)以優化電池功耗。

TLP故意地沒有切換圖形的功能,所以請尋找Ubuntu混合圖形教學。

答案2

TLP 是一個控制筆記型電腦許多電源管理選項的框架,適用於所有筆記型電腦(Thinkpad 需要特定配置除外)。如果沒有 TLP,您可能仍在使用筆記型電腦的某些電源管理選項:TLP 只是一個軟體包,可在一個位置對各種筆記型電腦電源管理功能提供相當全面的控制,其預設配置有利於電池壽命。

您的 tlp-stat 輸出顯示 TLP 處於活動狀態,此部分

+++ System Status
TLP power save = enabled
power source   = battery

您還可以看到其控制功耗的所有設備。

至於為什麼電池電流在兩次運行之間沒有更新,我不知道答案。您筆記型電腦中的電池硬體可能無法正確報告此統計資料或在特定時間段內進行平均。這本身並不表明 TLP 不起作用;而是表明 TLP 不起作用。正確的測試應該包括給筆記型電腦一個已知的工作負載,並計算電池耗盡的時間。當然這需要時間。

相關內容