[Hardware] *SOLVED* Re: q: HDA Intel: 40+ wakeups/sec

Michael Shigorin mike на osdn.org.ua
Сб Апр 4 16:32:19 MSD 2009


On Sat, Apr 04, 2009 at 01:13:48PM +0400, Konstantin A. Lepikhov wrote:
> > Lenovo Thinkpad X60 Tablet, 2.6.27-std-def-alt15
> А на 2.6.29 проверял? http://www.unsafe.ru/lakostis/RPMS/ALTLinux/testing/

Не, 2.6.29 я не собираюсь использовать по эстетическим
соображениям.  Твоих 2.6.28 здесь тоже пока не было,
до позавчера машинка администрировалась скорее в режиме
попытки прикинуться простым пользователем (tm), а с тех
пор пошла в работу.

> >   27.9% ( 46.9)       <interrupt> : HDA Intel 
> >   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

> > Из нагугленного -- load snd-hda-intel with
> > "power_save=10 power_save_controller=Y" options

Ага, помогло.  "На лету" так:

amixer set CD mute nocap >&/dev/null
amixer set Mic mute nocap >&/dev/null
#amixer set Line mute nocap >&/dev/null
echo 10 > /sys/module/snd_hda_intel/parameters/power_save
echo Y > /sys/module/snd_hda_intel/parameters/power_save_controller

Звук немного "сжамкивается" на старте, посмотрю, насколько это
будет критично (пока -- нет).

> >   20.0% ( 33.5)       <interrupt> : iwl3945 

Поднял на точке beacon interval (100->1000 ms):

  13.1% ( 14.0)       <interrupt> : iwl3945 

Про DTIM interval почитал, но пока не трогал:
https://docs.symbol.com/KanisaPlatform/Publishing/903/WID-00585_f.SAL_Public.html
http://wireless-nets.blogspot.com/2008/07/beacon-interval-impacts-on-battery-life.html

> >   10.2% ( 17.2)     seamonkey-bin : futex_wait (hrtimer_wakeup) 

Это будет следующей целью, если вообще атакуемой. :)

> >    9.0% ( 15.1)               psi : schedule_timeout (process_timeout) 

https://bugzilla.altlinux.org/show_bug.cgi?id=19479 -- теперь:

   1.9% (  2.0)               psi : schedule_timeout (process_timeout)

> >    5.4% (  9.1)      <kernel IPI> : Rescheduling interrupts

А, вот это ещё попробовал порыть опять -- тишина.

/sys/devices/system/cpu/sched_mc_power_savings не предлагать,
это про multi-socket, а не multicore.

> >    5.4% (  9.0)       <interrupt> : acpi

PS: тут ещё жили wmaker, wmclock и wmacpi, все пропатчены,
но к сожалению -- не все патчи долетели до пакетов в сизифе:
https://bugzilla.altlinux.org/show_bug.cgi?id=15951

У меня сейчас так:

   4.7% (  5.0)            wmaker : schedule_timeout (process_timeout)
   0.5% (  0.5)            wmacpi : schedule_timeout (process_timeout)

(wmclock обычно не видать)

в итоге X60 с 8-cell battery при довольно высокой яркости 
и работе через wifi грозится жить заметно более пяти часов:

tab:~> head /proc/acpi/battery/BAT0/*
==> /proc/acpi/battery/BAT0/alarm <==
alarm:                   3474 mWh

==> /proc/acpi/battery/BAT0/info <==
present:                 yes
design capacity:         66240 mWh
last full capacity:      69490 mWh
battery technology:      rechargeable
design voltage:          14400 mV
design capacity warning: 3474 mWh
design capacity low:     200 mWh
capacity granularity 1:  1 mWh
capacity granularity 2:  1 mWh
model number:            93P5032

==> /proc/acpi/battery/BAT0/state <==
present:                 yes
capacity state:          ok
charging state:          discharging
present rate:            10508 mW
remaining capacity:      53290 mWh
present voltage:         14843 mV
tab:~> acpi
     Battery 1: discharging, 76%, 04:59:43 remaining
:)

-- 
 ---- WBR, Michael Shigorin <mike at altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/
-------------- next part --------------
#!/bin/sh
[ -d /sys/devices/platform/hdaps ] && cat /etc/hdaps.calibration > /sys/devices/platform/hdaps/calibrate

[ -d /sys/devices/system/cpu/cpu0/cpufreq/ ] && {
        echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
        echo ondemand >/sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
        echo 1 >/sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice_load
        echo 5000000 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate
}

# http://www.thinkwiki.org/wiki/How_to_reduce_power_consumption
echo 0 > /proc/sys/kernel/nmi_watchdog
echo 10 > /sys/module/snd_hda_intel/parameters/power_save
echo Y > /sys/module/snd_hda_intel/parameters/power_save_controller
amixer set CD mute nocap >&/dev/null
amixer set Mic mute nocap >&/dev/null
for i in /sys/bus/usb/devices/*/power/autosuspend; do echo 1 > $i; done
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy
echo min_power > /sys/class/scsi_host/host1/link_power_management_policy
echo 5 > /proc/sys/vm/laptop_mode
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
echo dvi_disable > /proc/acpi/ibm/video
echo crt_disable > /proc/acpi/ibm/video

echo disable > /proc/acpi/ibm/bluetooth

# powertop (I spotted the dups, it's sort of a log)
echo 5 > /sys/bus/pci/drivers/iwl3945/0000:03:00.0/power_level 
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
ethtool -s eth0 wol d >&/dev/null
echo 5 > /proc/sys/vm/laptop_mode


Подробная информация о списке рассылки Hardware