4.2. 範例 — 筆記型電腦

另一個電源管理與節能功能可以發揮所長的地方,是筆記型電腦。一般來說,筆記型電腦的耗電量在設計時就已經比工作站、伺服器還要低。在電池模式下,任何節能方式都可以從電池再榨出幾分鐘的電力。雖然本節專注在筆電的電池模式,但您還是可以把這裡的一些微調技巧用在連接 AC 電源上。
通常在筆電上節省單一元件的電力,會比在工作站上這樣作更有效。舉例來說,1 Gbit/s 的網路介面如果只以 100 Mbits/s 的速度執行,可以省下大約 3-4 瓦的電力。對於整體消耗 400 瓦的伺服器來說,這大約省下了 1% 的電力;對於整體消耗 40 瓦的筆記型電腦來說,單是此單一元件所省下的電力就佔了總額的 10%。
一般筆記型電腦的電源最佳化方式有:
  • 在系統 BIOS 裡,停用所有不使用的硬體。舉例來說,平行連接埠或序列埠、讀卡機、攝影機、WiFi 無線網路、藍牙等等。
  • 在較暗的環境裡使用筆電時,螢幕不需要非常亮也可以閱讀無礙,所以不妨把螢幕的亮度設暗一點。您可以在 GNOME 桌面環境下,透過 系統+偏好設定電源管理程式,或 KDE 桌面的 Kickoff Application Launcher+電腦+系統設定+進階電源管理,抑或使用命令列執行 gnome-power-managerxbacklight,又或是筆記型電腦的功能鍵來達到此一效果。
  • 使用 tuned-adm 應用程式的 laptop-battery-powersave 來啟用全套的節能機制。請注意硬碟與網路卡的效能與延遲時間,有決定性的影響。
除此之外,您也可以對多種系統設定進行微調:
  • 使用 ondemand 調速程式(預設上,Red Hat Enterprise Linux 6 會啟用這個功能)
  • 啟用筆電模式(laptop-battery-powersave 的一部分):
    echo 5 > /proc/sys/vm/laptop_mode
  • 增加磁碟的 flush 時間(laptop-battery-powersave 的一部分):
    echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
  • 停用 nmi watchdog(laptop-battery-powersave 的一部分):
    echo 0 > /proc/sys/kernel/nmi_watchdog
  • 啟用 AC97 音效的節能模式(預設上,Red Hat Enterprise Linux 6 會啟用這個功能):
    echo Y > /sys/module/snd_ac97_codec/parameters/power_save
  • 啟用多核心的節能功能(laptop-battery-powersave 的一部份):
    echo 1 > /sys/devices/system/cpu/sched_mc_power_savings
  • 啟用 USB 的自動暫停功能:
    for i in /sys/bus/usb/devices/*/power/autosuspend; do echo 1 > $i; done
    請注意:不是所有的 USB 裝置都支援此功能。
  • 啟用 ALPM 的最低耗電設定(laptop-battery-powersave 的一部分):
    echo min_power > /sys/class/scsi_host/host*/link_power_management_policy
  • 使用 relatime 參數來掛載檔案系統(預設上 Red Hat Enterprise Linux 6 會啟用此功能):
    mount -o remount,relatime mountpoint
  • 啟用硬碟的最佳節能模式(laptop-battery-powersave 的一部分)
    hdparm -B 1 -S 200 /dev/sd*
  • 停用光碟機的輪詢功能(laptop-battery-powersave 的一部分):
    hal-disable-polling --device /dev/scd*
  • 把螢幕亮度降至 50 以下,例如:
    xbacklight -set 50
  • 啟用螢幕閒置時的 DPMS 功能:
    xset +dpms; xset dpms 0 0 300
  • 降低 Wi-Fi 的電力(laptop-battery-powersave 的一部分):
    for i in /sys/bus/pci/devices/*/power_level ; do echo 5 > $i ; done
  • 停用 Wi-Fi:
    echo 1 > /sys/bus/pci/devices/*/rf_kill
  • 把有線網路的速度設為 100 Mbit/s(laptop-battery-powersave 的一部分):
    ethtool -s eth0 advertise 0x0F