与 Windows 7 相比,笔记本电脑的电池寿命大幅缩短

Aro*_*eel 17 battery 10.10 laptop

可能的重复:
与 Windows 相比,为什么我的计算机使用 Ubuntu 获得的电池寿命更短?

我在 Dell Studio XPS 1640 上运行 Ubuntu 10.10,电池续航时间约为 1 小时,而在 Windows 7 上运行约为 2.5 小时。

这是在无线和蓝牙开启的情况下,但仍然如此,差异似乎令人难以置信。

是什么导致了这种差异,有没有办法在不失去核心功能的情况下缩小差距?

编辑:这是powertop的一些输出。这是关闭蓝牙并打开Wifi。输出对我来说似乎很正常,但正如所指出的,在充满电的情况下,这大约是 1 小时的电池寿命......

Wakeups-from-idle per second : 476.2    interval: 10.0s
Power usage (ACPI estimate): 2.5W (1.2 hours)

Top causes for wakeups:
  30.0% (167.2)D  chrome
  21.0% (117.3)   [extra timer interrupt]
  13.9% ( 77.4)   [kernel scheduler] Load balancing tick
   3.4% ( 18.9)D  xchat
   7.1% ( 39.8)   [iwlagn] <interrupt>
   5.9% ( 32.9)   AptanaStudio3
   3.9% ( 21.6)D  java
   2.7% ( 14.9)   [TLB shootdowns] <kernel IPI>
   2.5% ( 14.1)   docky
   1.8% ( 10.0)   nautilus
   1.6% (  9.0)   thunderbird-bin
   1.0% (  5.5)   [ahci] <interrupt>
   0.9% (  5.0)   syndaemon
   0.8% (  4.3)   [kernel core] hrtimer_start (tick_sched_timer)
Run Code Online (Sandbox Code Playgroud)

编辑:更改/proc/sys/vm/laptop_mode5(设置为0)后,唤醒似乎减少了,尽管使用率似乎仍然过高:

Wakeups-from-idle per second : 263.8    interval: 10.0s
Power usage (ACPI estimate): 2.6W (0.9 hours)
Run Code Online (Sandbox Code Playgroud)

编辑:我似乎发现了主要原因:我使用的是开源 ATI 驱动程序。我最近安装了官方 ATI 驱动程序,笔记本电脑的电池寿命似乎从那时起翻了一番。

编辑:上次编辑。以前安装官方 ATI 驱动程序的“解决方案”被证明是非解决方案。虽然它确实延长了电池寿命,但我的笔记本电脑在重新启动后最大分辨率为 1200x800。(请注意,这个问题不需要在这个问题中回答,因为它是一个单独的案例)

编辑和解决方案:

经过更多的反复试验,我终于找到了一个自定义 PPA,可以修补 Maverick 的 2.6.35 内核。我的唤醒次数现在从 450-1100 减少到最多 120(!)。

Wakeups-from-idle per second : 110,2    interval: 15,0s
Power usage (ACPI estimate): 2,7W (0,7 hours)

Top causes for wakeups:
  19,2% ( 25,7)   [extra timer interrupt]
  17,0% ( 22,7)   java
  13,9% ( 18,6)   [kernel scheduler] Load balancing tick
  10,5% ( 14,0)   docky
   8,8% ( 11,7)   [iwlagn] <interrupt>
   7,5% ( 10,0)   nautilus
   4,3% (  5,7)   [kernel core] hrtimer_start (tick_sched_timer)
   3,7% (  5,0)   syndaemon
   3,0% (  4,1)   [ahci] <interrupt>
   3,0% (  4,1)   ksoftirqd/1
   0,1% (  0,2)D  flush-8:0
   1,6% (  2,2)   mysqld
   1,2% (  1,7)   python
   0,7% (  1,0)   [kernel core] iwl_bg_monitor_recover (iwl_bg_monitor_recover)
Run Code Online (Sandbox Code Playgroud)

jet*_*jet 5

使用powertop看看电源的去向


Mik*_*kel 3

Ubuntu电源管理 Wiki表示系统应该每秒唤醒大约 40 次。你的是476!

也就是说,这是我的输出:

Wakeups-from-idle per second : 185.4    interval: 1.8s
Power usage (ACPI estimate): 5.8W (8.9 hours) (long term: 6.4W,/8.1h)

Top causes for wakeups:
  37.5% (137.0)   [kernel scheduler] Load balancing tick
  19.2% ( 70.0)   chromium-browse
  10.4% ( 38.0)   [uhci_hcd:usb5, eth1] <interrupt>
   8.2% ( 30.0)   [kernel core] hrtimer_start (tick_sched_timer)
   7.7% ( 28.0)   [kernel core] add_timer (wl_timer)
   4.9% ( 18.0)   xbindkeys
   4.4% ( 16.0)   [i915@pci:0000:00:02.0] <interrupt>
   2.5% (  9.0)   Xorg
   1.9% (  7.0)   PS/2 keyboard/mouse/touchpad interrupt
   1.1% (  4.0)   [Rescheduling interrupts] <kernel IPI>
   0.5% (  2.0)   gvfs-afc-volume
   0.5% (  2.0)   gnome-terminal
Run Code Online (Sandbox Code Playgroud)

我觉得有趣的是:

  • 我的唤醒次数是 185,比你的 476 低很多,但高于 40 的目标
  • 您报告的用电量只是2.5W- 听起来低得可疑
  • 我的电池续航时间为 8.9 小时,这与应有的时间差不多

第一个显而易见的事情是要尝试。从 bash 提示符运行此命令:

cat /proc/sys/vm/laptop_mode
Run Code Online (Sandbox Code Playgroud)

它应该打印 5。

之后,也许其他人有一些想法,或者阅读 Wiki 看看是否有帮助。