2013/06/27

Linux Power and Battery Life



這篇文章整理之前在看 Ubuntu 省電機制的。


電池資訊


Linux 系統中的電池資訊在 sysfs 裡都找得到,如下。或是直接使用 gnome-power-statistics 來看也可以,如上圖。

u-Latitude-E6440:/sys/class/power_supply/BAT01 ls
alarm               current_now   model_name     status      uevent
charge_full         cycle_count   power          subsystem   voltage_min_design
charge_full_design  device        present        technology  voltage_now
charge_now          manufacturer  serial_number  type

對 voltage_now, current_now, charge_full, voltage_min_design 做簡單的運算便能得到放電速度及總電量。底下的 script 提供了簡單的放電速度統計。



執行畫面如下:

u@u-Latitude-E6540:~1 ./power.sh  ts
Jun 13 16:20:43 current   average   capacity   full_capacity   time_left
Jun 13 16:20:43 14.13254   14.13254   37.19610   65.49000   2.63
Jun 13 16:20:48 14.07107   14.11409   37.17390   65.49000   2.63
Jun 13 16:20:53 14.08747   14.10610   37.15170   65.49000   2.63
Jun 13 16:20:58 13.77746   14.00750   37.14060   65.49000   2.65
Jun 13 16:21:03 14.03222   14.01491   37.11840   65.49000   2.64
Jun 13 16:21:08 13.16450   13.75978   37.09620   65.49000   2.69

有時沒儀器可以量時,用 script 來計算是蠻方便的。


延長電池使用時間


之前用了 2 種方式來讓系統更省電。

  1. Append boot coomand "pcie_aspm=force"
  2. Install PowerTOP
  3. Install Laptop Mode Tools

第一種 ASPM 的方法,大概可以省個 2 W 左右。第二種 PowerTOP 的方式,全部省電機制啟用,也可再省個 2 W 左右。最後第三種 laptop-mode-tools,這只是個方便的 PowerTOP 工具而已,它會讓你在沒插 AC 電源時,自動將 PowerTOP 的省電機制啟用。個人是建議一般的 NB 可以試試 1 + 3。

最近做到的平台都是 SharkBay (haswell),對於硬體比較有針對省電設計的,大概上面那些機制全下,大概平均耗電量是 6 W/h,對於常見的 50 W 的電池用個 8 小時是沒問題,但 8 小時也是要 NB 放著都不動,如果像我常看個影片,開個 VM,那還會有 5 小時嗎?呵呵

(對於 MBA 的 12 小時來說,8 小時跟垃圾一樣)

No comments: