Показаны сообщения с ярлыком x200s. Показать все сообщения
Показаны сообщения с ярлыком x200s. Показать все сообщения

среда, 16 сентября 2009 г.

x200s. 2 бага после установки ядра 2.6.30

После установки нового ядра возникло 2 бага
  1. Яркость дисплея регулируется с очень мелким шагом
    Вроде как, причина здесь в установке параметров xrand BACKLIGHT_CONTROL.
    После загрузки он принимает значение combination

    Чтобы исправить это, нужно выполнить следующую команду:
    $ xrandr --output LVDS --set BACKLIGHT_CONTROL legacy
  2. При работе от батареи яркость дисплея уменьшается через 30 секунд
    Здесь причина - gnome-screensaver
    HOWTO: Replace gnome-screensaver with xscreensaver

воскресенье, 13 сентября 2009 г.

x200s. Powersave. Обновился BIOS.

(Продолжение. Начало статьи)

7 сентября обновился BIOS для x200 и x200s.

Я не следил за исменениями в BIOS, поэтому не знаю на каком этапе китайцы что поправили.

После установки нового BIOS произошли исправлена ошибка из-за которой SCSI1 не переводился в режим powersave.

Режим работы вентилятора опять с какими-то глюками. При включении он вроде как не крутится. При достижении процессором 45 градусов - заводится и больше не останавливается. Поэтому от tpfun отказываться рано.

Вентилятор включается при 45 градусах, останавливается при достижении порога выключения (температуру отключения я не зафиксировал).

На странице загрузки доступны версии для установки из Windows и с загрузочного диска.

Там же есть новая микропрограмма для жесткого диска. Что она исправляет - не ясно.

x200s. Powersave. Настроить режимы видеокарты.

(Продолжение. Начало статьи)

  • Установить частоту обновления экрана 50 Гц
    System -> Preference -> Display



  • Отключить Visual Effects
    System -> Preference -> Appearance -> Visual Effects



четверг, 10 сентября 2009 г.

x200s. Power Saving. Kernel 2.6.30.5

Указанное ядро в отношении сохранения энергии работает куда лучше предыдущих, опробованных мной. Налицо явный прогресс. Если раньше флуктуации возле нижней границы потребляемой мощности были значительны, то в этом ядре, после соответствующей настройки стабильно стоит 6,7 Вт в режиме idle (Wi-Fi, Brightness = 30%).
Вообще, заметно, что ментейнеры Canonical озадачились проблемой сохранения энергии.
По этому показателю Ubuntu начинает обгонять Windows.

суббота, 22 августа 2009 г.

x200s. Powersave. Final thoughts.

(Продолжение. Начало статьи)

В завершение всего этого безобразия - скрипт для показа в реальном времени основных системных параметров, влияющих на потребление энергии.

Он показывает практически все параметры, которые управляются с помощью сервиса laptop-mode и удобен для его настройки.




Не без недочетов, но функцию свою выполняет.

Запускается от root.
Исходник здесь


пятница, 21 августа 2009 г.

x200s. Powersave. xorg.conf

(Продолжение. Начало статьи)

Наилучшие результаты у меня получились про акселерации "по умолчанию".
Section "Monitor"
Identifier    "Configured Monitor"
Option        "DPMS"
EndSection

Section "Monitor"
Identifier    "HDMI-1"
Option        "Ignore" "True"
EndSection

Section "Monitor"
Identifier    "HDMI-2"
Option        "Ignore" "True"
EndSection

Section "Screen"
Identifier    "Default Screen"
Monitor       "Configured Monitor"
Device        "Configured Video Device"
DefaultDepth  24
SubSection    "Display"
Modes        "1280x800" "1024x768"
EndSubSection
EndSection

Section "Device"
Identifier    "Configured Video Device"
Driver        "intel"
#     Option        "AccelMethod" "uxa"   # При включении этой опции потреблени е возрастает на 1 Вт
Option        "monitor-HDMI-1" "HDMI-1"
Option        "monitor-HDMI-2" "HDMI-2"
EndSection

Section "ServerFlags"
Option        "DontZap" "no" # Включение x-server restart by Ctrl-Alt-Bs
EndSection


Включение опции "NoDRI" приводило к проблемам регулировки яркости.


среда, 12 августа 2009 г.

x200s/x220. Powersave. Firefox.

(Продолжение. Начало статьи)

Update:
  • После перехода на Ubuntu 9.04 и firefox 3.5 Shiretoko внесены исправления в скрипт: изменено имя программы с firefox на firefox-3.5.
  • Проверено на Ubuntu 10.04
Если в компьютере установлен SSD накопитель, то ничего этого делать не нужно

Firefox 3.x использует базу данных sqlite, которая генерирует очень много событий записи на диск.

Чтобы уменьшить обращения к диску, необходимо сделать следующее:

  1. Разместить firefox cache в оперативной памяти

    Для этого:
    1. Перенести в RAM директорию /tmp

    2. Перенести cache firefox в /tmp/firefox.
      В строке адреса пишем about:config
      Далее нажимем правуб кнопку мыши и добавляем строковую переменную:
      browser.cache.disk.parent_directory
      и присвоить ей значение:
      /tmp/firefox

  2. Размещаем весь профиль пользователя в RAM.

    Этот способ более радикальный, нежели предыдцщий, но и, соответственно, более сложный. Поэтому распечатайте эту инструкцию или скопируйте ее на диск и откройте в OO Writer.
    1. Перенести в RAM директорию /tmp

    2. Создать каталог для профиля пользователя в firefox
      $mkdir /tmp/firefox
    3. Создать новый профиль. Я назвал его RAM и разместил в каталоге /tmp/firefox
      $/usr/lib/firefox/firefox -ProfileManager

    4. Закрываем firefox.
    5. Скопировать текущий профиль в каталог /tmp/firefox
      $shopt -s dotglob $cp -a ~/.mozilla/firefox/40ev7h33.default/* /tmp/firefox
      Расположение текущего профиля указано в ~/.mozilla/firefox/profiles.ini
    6. Создаем скрипт /etc/init.d/ff-profile.sh:
      #! /bin/sh
      # This script copies the firefox user profile
      #  from the directory $DSK_PROFILE
      #  to the directory $RAM_PROFILE
      #  after the computer power up
      #  and back before power down
      # 
      #  v0.12 - minor changes for firefox control firefox cache
      #  v0.11 - minor changes for firefox 3.5 and Ubuntu 9.04
      #  v0.1 - initial in Ubuntu 8.04
      
      # define firefox name
      #FF=firefox-3.5
      FF=firefox
      
      # define how old cache in days
      OLDCACHE=2
      
      # where firefox profile
      RAM_PROFILE=/tmp/firefox
      DSK_PROFILE=/root/.mozilla/$FF/ram.profile
      
      FLG_DEBUG=1
      OUT_DEBUG=/var/log/ff-profile.tst
      
      shopt -s dotglob
      
      case "$1" in
        start)
          if [ $FLG_DEBUG -eq 1 ]
            then echo "$1: ff-profile.sh started" >> $OUT_DEBUG
          fi
          if ! [ -d $RAM_PROFILE ] 
            then 
              mkdir -p $RAM_PROFILE
              chmod 777 $RAM_PROFILE
                if [ $FLG_DEBUG -eq 1 ]
                  then echo "$1: creating  $RAM_PROFILE" >> $OUT_DEBUG
                fi
          fi
          if [ $FLG_DEBUG -eq 1 ]
            then echo "$1: copy $DSK_PROFILE/* $RAM_PROFILE " >> $OUT_DEBUG
          fi
          # remove old cache
          find $DSK_PROFILE/Cache* -mtime +$OLDCACHE -exec rm {} \;
      
          cp -a $DSK_PROFILE/* $RAM_PROFILE >> $OUT_DEBUG
          ;;
        stop)
          if [ $FLG_DEBUG -eq 1 ]
            then echo "$1: ff-profile.sh stoped" >> $OUT_DEBUG
          fi
          if ! [ -d $DSK_PROFILE ] 
            then 
              mkdir -p $DSK_PROFILE
              chown 777 $DSK_PROFILE
              if [ $FLG_DEBUG -eq 1 ]
                then echo "$1: creating  $DSK_PROFILE" >> $OUT_DEBUG
              fi
          fi
          if [ $FLG_DEBUG -eq 1 ]
            then echo "$1: copy $RAM_PROFILE/* $DSK_PROFILE " >> $OUT_DEBUG
          fi
          cp -a $RAM_PROFILE/* $DSK_PROFILE
          ;;
      esac
      
      shopt -u dotglob
      
      exit 0
    7. Назначаем ему права, пользователя, и делаем на него ссылку автозапуска и остановки
      cd /etc/init.d $sudo chmod 755 ff-profile.sh $sudo chown root:root ff-profile.sh $sudo update-rc.d ff-profile.sh defaults
    8. Открываем редактор меню (System->Preferences->Main Menu).
      Заменяем команду запуска firefox (Application->Internet->Firefox Web Browser->Properties) на /usr/lib/firefox/firefox -P RAM

      Перезагружаем компьютер. Проверяем работу.

  3. В Firefox в меню Правка -> Настройки -> Защита снять галку с пункта "Блокировать сайты, подозреваемые в имитации других сайтов"

  4. Динамические сайты с flash анимацией и java-script вносят большую долю в увеличение потребления энергии.

    Для блокировки на страницах java - установить в firefox adblock plus и заблокировать в нем показ соответствующих элементов http страниц.

    Для блокировки flash - установить Flashblock

    Это позволяет сэкономить до 1,5 Вт.

вторник, 11 августа 2009 г.

x200s. Управление вентилятором.

(Продолжение. Начало статьи)

Если установлена последняя версия BIOS 3.08 от 2009.09.07, то устанавливать tpfun нет необходимости.

Хотя я и писал, что не стоит трогать вентилятор, поскольку это жизненно важный элемент ноутбука, руки все равно чешутся.

Я установил ThinkPad Fan Control в соответствии с инструкцией указанной на домашней странице программы.

Создал файл конфигурации lenovo_74663tg:
# Fan profile for tpfand
# For Lenovo 7466-3TG
# created on  2009-08-10 21:28:17.152556
# by an http://axa-ru.blogspot.com
#
0. CPU = 0:0 47:2 63:3 71:5 75:255 
1. MiniPCI = 0:0 47:2 59:3 65:5 68:255
2. Sensor 2 = 0:0
3. GPU = 0:0 53:2 65:3 71:5 74:255
4. Bat0 = 0:0 43:2 52:3 57:5 60:255
5. Sensor 5 = 0:0 
6. Bat0 = 0:0 43:2 52:3 57:5 60:255
7. Sensor 7 = 0:0
8. Northbridge = 0:0 52:2 62:3 67:5 70:255
9. RAM? = 0:0 52:2 62:3 67:5 70:255

hysteresis = 2
interval_speed = 2
interval_duration = 500.000000
interval_delay = 5000.000000

и разместил его в каталоге /usr/share/tpfand/models/by-id.



Файл конфигурации зависит от модели ноута. У меня 7466-3TG
С большой вероятностью он подойдет для следующих моделей (собранных на той же системной плате):

7466- 3Tx, 3Ux
7469- 5Fx, 7Lx, 7Mx, 7Nx, 7Px, 7Rx, 7Sx, 7Tx, 7Ux, 7Vx, 7Xx
7470- 6Jx, 6Kx

Вот собственно и все. Экономия энергии от этого небольшая. По моим оценкам менее 0,1 Вт.

Для справки температурные режимы процессора:
Обычная температура в режиме Idle30-50°C
Рабочая, при полной утилизации процессора60-70°C
Максимальная температура100°C
Критическая температура 125°C



PS. TpFan собран для Ubuntu 9.04 и в Ubuntu 11.10 пакеты не устанавливаются.
Для экспериментаторов я переупаковал пакеты:

tpfan-admin_0.96-ubuntu1_all_patched.deb
tpfand_0.95-ubuntu1_all_patched.deb
tpfand-profiles_20090309-ubuntu1_all.deb

Если у кого появится желание попробовать, отпишитесь по результатам.

Updated 24/12/2011

четверг, 6 августа 2009 г.

x200s/x220. Увеличение времени работы от батарей.

Статья в процессе . . .
По мере обнаружения новых возможностей я буду редактировать эту статью.
В настоящее время весь материал проверен и дал положительные результаты.
Если есть вопросы, предложения, замечания - задавайте. Всегда рад обсудить.

Что у нас есть?
  • Lenovo ThinkPad x200s 74663TG. Проверено на Ubuntu 9.04, 9.10, 10.04, 10.10
  • Lenovo ThinkPad x220 4290RW1. Проверено на Ubuntu 11.04, 11.10

Видно, что разработчиками ядра была проведена работа по уменьшению потребления энергии. Мне удалось настроить систему так, что на Lenovo Thinkpad x200s с ядром 2.6.35-31-generic-pae при включенном wi-fi и запущеном firefox в idle минимальное потребление составляло 4.1 Вт. Типичное - около 5 Вт.


Для Lenovo Thinkpad x220 4290RW1 под Ubuntu 11.04 с ядром 2.6.38 показатели чуть скромнее: около 8,3 Вт. Типичный уровень потребления 9 Вт. Это лучше чем в Windows 7, где потребление составляет 10-11 Вт.
На скриншоте ниже показан powertop и snapshot Power Manager, сделанный из под Windows7.


Для той же Lenovo Thinkpad x220 4290RW1 под Ubuntu 11.10 с ядром 3.0.0.13: около 7 Вт. Типичный уровень потребления 9 Вт.



Для той же Lenovo Thinkpad x220 4290RW1 под Ubuntu 11.10 с кастомным ядром 3.1.5-pf.: около 6 Вт. Типичный уровень потребления 8 Вт.


Игра Emilia Pinball дает потребляемую мощность около 21 Вт. Я думаю, столько же даст Quake.

Теория и исследования


Что делать?

  1. Обновить BIOS
  2. Отключить в BIOS неиспользуемые устройства

  3. Установить новое ядро
  4. Настроить x server (xorg.conf)
  5. Настроить режимы видеокарты
  6. Перенести временные файлы в RAM
  7. Отключить запись логов
  8. Для SSD минимизировать запись на диск.
  9. Настроить laptop_mode (Ubuntu 9.04) или pm-utils (≥ 9.10).
  10. Включить управление скоростью вентилятора.
  11. Настроить работу программ
  12. Отключить некритичные сервисы.
  13. Если возможно, настроить точку доступа.



Полезные ссылки:


Upd 04/11/2011

понедельник, 3 августа 2009 г.

ThinkPad x200s. Настройка laptop-mode

(Продолжение. Начало статьи)

Laptop-mode - очень гибкая утилита, позволяющая управлять многими параметрами оборудования и системы.
В основном используются механизмы и команды описанные здесь.

По умолчанию laptop-mode установлена в ubuntu, но так как было замечено, что на ThinkPad иногда приводила к зависанию компьютера, она выключена и большинство управляющих констант установлено в "false" или "0".

Но на моем x200s все работает без проблем (с некоторыми моими доработками).

Почти все управляющие и командные файлы laptop-mode являются текстовыми. В них дано подробное описание по каждой команде и константе.

Я просто укажу файл, константу и значение, которое я ей присвоил.

Те константы и файлы, которые остались без изменения, я опущу.

  1. Включить laptop-mode
    • /etc/default/acpi-support
      ENABLE_LAPTOP_MODE=true


  2. Настроить файлы конфигурации

    1. /etc/laptop-mode/conf.d/ac97-powersave.conf
      CONTROL_AC97_POWER=1

    2. /etc/laptop-mode/conf.d/configuration-file-control.conf
      CONTROL_CONFIG_FILES=1

      Включение этого параметра позволяет держать 3 конфигурационных файла syslog.conf, управляющих логами, для разных режимов.
      Я закоментировал весь логинг (/etc/syslog.conf-batt) для режима работы от батареи.

    3. /etc/laptop-mode/conf.d/cpufreq.conf
      CONTROL_CPU_FREQUENCY=1
      BATT_CPU_MAXFREQ=slowest
      BATT_CPU_MINFREQ=slowest
      BATT_CPU_GOVERNOR=powersave
      CONTROL_CPU_THROTTLING=1
      BATT_CPU_THROTTLING=medium
      LM_AC_CPU_THROTTLING=minimum

    4. /etc/laptop-mode/conf.d/ethernet.conf
      Этот модуль работал странно. При смене питания батарея/сеть не переключалась скорость интерфейса.
      Я его переписал и устранил эту ошибку.
      Заодно ввел 3 константы, определяющие скорость в разных режимах.
      CONTROL_ETHERNET=1
      DISABLE_WAKEUP_ON_LAN=1
      BATT_THROTTLE_ETHERNET=1
      LM_AC_THROTTLE_ETHERNET=1
      NOLM_AC_THROTTLE_ETHERNET=1
      BATT_SPEED_ETHERNET=100
      LM_AC_SPEED_ETHERNET=1000
      NOLM_AC_SPEED_ETHERNET=1000
      ETHERNET_DEVICES="eth0"

      Файл /usr/share/laptop-mode-tools/modules/ethernet изменить в соответствии с приведенным ниже (сделать copy/past).
      #! /bin/sh
      # 
      # Laptop mode tools module: Ethernet power saving tweaks.
      #
      
      if [ x$CONTROL_ETHERNET = x1 ] ; then
        for DEVICE in $ETHERNET_DEVICES ; do
      
          # Wakeup-on-LAN handling
          if [ x$DISABLE_WAKEUP_ON_LAN = x1 ] ; then
            if ethtool -s $DEVICE wol d >> $OUTPUT 2>&1 ; then
              $LM_VERBOSE && echo "Disabled wakeup-on-LAN for $DEVICE" >> $OUTPUT
            else
              $LM_VERBOSE && echo "Could not disable wakeup-on-LAN for $DEVICE" >> $OUTPUT
            fi
          fi
      
          if [ $ON_AC -eq 1 ]; then
          # working on AC
            if [ $LM_AC_THROTTLE_ETHERNET -eq 1 ] ; then
              if ethtool -s $DEVICE speed $LM_AC_SPEED_ETHERNET >> $OUTPUT 2>&1 ; then
                $LM_VERBOSE && echo "Setting LAN speed = $LM_AC_SPEED_ETHERNET for $DEVICE" >> $OUTPUT
              else
                $LM_VERBOSE && echo "Could not chanche speed"
              fi
            fi
            if [ $NOLM_AC_THROTTLE_ETHERNET -eq 1 ] ; then
              if ethtool -s $DEVICE speed $NOLM_AC_SPEED_ETHERNET >> $OUTPUT 2>&1 ; then
                $LM_VERBOSE && echo "Setting LAN speed = $NOLM_AC_SPEED_ETHERNET for $DEVICE" >> $OUTPUT
              else
                $LM_VERBOSE && echo "Could not chanche speed"
              fi 
            fi
          else
          # working on Battery
            if [ $BATT_THROTTLE_ETHERNET -eq 1 ] ; then
              if ethtool -s $DEVICE speed $BATT_SPEED_ETHERNET >> $OUTPUT 2>&1 ; then
                $LM_VERBOSE && echo "Setting LAN speed = $BATT_SPEED_ETHERNET for $DEVICE" >> $OUTPUT
              else
                $LM_VERBOSE && echo "Could not chanche speed"
              fi
            fi
          fi
        done
      else
        $LM_VERBOSE && echo "Ethernet module is disabled." >> $OUTPUT
      fi

    5. /etc/laptop-mode/conf.d/hal-polling.conf
      CONTROL_HAL_POLLING=1

    6. /etc/laptop-mode/conf.d/intel-hda-powersave.conf
      CONTROL_INTEL_HDA_POWER=1

      Значение, которое передается контроллеру Intel HDA указано в скрипте /usr/share/laptop-mode-tools/modules/intel-hda-powersave в строке:
      . . .
      echo 5 > /sys/module/snd_hda_intel/parameters/power_save
      . . .
      

      Я заменил значение 5 на 10.

    7. /etc/laptop-mode/conf.d/intel-sata-powermgmt
      CONTROL_INTEL_SATA_POWER=1

    8. /etc/laptop-mode/conf.d/lcd-brightness.conf
      CONTROL_BRIGHTNESS=1
      BATT_BRIGHTNESS_COMMAND="echo 30"
      LM_AC_BRIGHTNESS_COMMAND="echo 80"
      NOLM_AC_BRIGHTNESS_COMMAND="echo 80"
      BRIGHTNESS_OUTPUT="/proc/acpi/video/VID/LCD0/brightness"

    9. /etc/laptop-mode/conf.d/sched-mc-power-savings.conf
      CONTROL_SCHED_MC_POWER_SAVINGS=1

    10. /etc/laptop-mode/conf.d/start-stop-programs.conf
      CONTROL_START_STOP=1
      BATT_STOP="on-ac.sh"
      BATT_START="on-battery.sh"

      В этом конфигурационном файле указываются имена скриптов запускающихся при переходe в режим работы от батареи
      #!/bin/bash
      
      # ********************************************
      # * on-battery.sh
      # ********************************************
      
      echo "for check running on-battery.sh" >> /tmp/lt-m-check.out
      
      # ********  Tuning VM
      echo 0 > /proc/sys/vm/swappiness   #    Disable SWAP
      echo 30000 > /proc/sys/vm/dirty_writeback_centisecs
      echo 0 > /proc/sys/vm/dirty_expire_centisecs
      echo 1 > /proc/sys/vm/dirty_background_ratio
      echo 95 > /proc/sys/vm/dirty_ratio
      
      #   Agressive PCI
      echo powersave > /sys/module/pcie_aspm/parameters/policy
      
      #   Set timeout to idle 20 sec, 
      #     acoustic management HDD to more silent, less performance
      hdparm -q -S4 -M 128 /dev/sda
      
      # disable HDMI
      xrandr --output HDMI-1 --off
      xrandr --output HDMI-2 --off
      
      # Stop cron, anacron
      /etc/init.d/cron stop >> /dev/null
      /etc/init.d/anacron stop >> /dev/null
      

      и от сетевого источника питания источника питания.
      # ********************************************
      # * /etc/laptop-mode/batt-stop/on-ac.sh
      # ********************************************
      
      echo "for check running on-ac.sh" >> /tmp/lt-m-check.out
      
      #   Tuning VM. Вернуть значения по умолчанию
      echo 60 > /proc/sys/vm/swappiness
      echo 60000 > /proc/sys/vm/dirty_writeback_centisecs
      echo 60000 > /proc/sys/vm/dirty_expire_centisecs
      echo 1 > /proc/sys/vm/dirty_background_ratio
      echo 60 > /proc/sys/vm/dirty_ratio
      
      # set acoustic management HDD: more performance
      hdparm -q -M 254 /dev/sda
      
      # Start cron, anacron
      /etc/init.d/cron start >> /dev/null
      /etc/init.d/anacron start >> /dev/null

      Эти файлы нужно сохранить в каталогах
      /etc/laptop-mode/batt-start/
      и
      /etc/laptop-mode/batt-stop/
      соотвественно и сделать исполняемыми:
      $sudo chmod 755 /etc/laptop-mode/batt-start/on-battery.sh $sudo chmod 755 /etc/laptop-mode/batt-stop/on-ac.sh

    11. /etc/laptop-mode/conf.d/usb-autosuspend.conf
      CONTROL_USB_AUTOSUSPEND=1

    12. /etc/laptop-mode/conf.d/wireless-iwl-power.conf
      CONTROL_IWL_POWER=1
      IWL_AC_POWER=1
      IWL_BATT_POWER=5



После изменении параметров всех, или части параметров конфигурационных файлов необязательно перезагружать компьютер. Достаточно выполнить команду перезапуска службы laptop-mode
#service laptop-mode restart




Обсуждение лучше вести здесь:

ThinkPad x200s/x220. Перенос временных файлов в RAM

(Продолжение. Начало статьи)

Цель: уменьшить количество обращений к диску, и увеличить время нахождения HDD в состоянии spin-down.
Если в компьютере установлен SSD, то пропускаем этот раздел.

Из общих рекомендаций скажу, что хорошо бы увеличить количество оперативной памяти. Если используется 32-х битная Linux поставить pae-версию ядра. Или использовать 64-х битное ядро.


  • tmp файлы

    По умолчанию временные каталоги в ubuntu создаются на диске. Постоянно обращаясь и скидывая временные файлы на диск операционная система не дает диску выключаться.
    Лучше временные файлы разместить в RAM.

    Для этого нужно добавить в файл /etc/fstab такие строчки
    tmpfs  /tmp            tmpfs        defaults           0    0
    tmpfs  /var/tmp        tmpfs        defaults           0    0


  • wpa_supplicant (для <=9.04)

    Этот драйвер пишет свои логи примерно раз в минуту в файл, задаваемый в строке запуска.
    По умолчанию лог ведется в стандартный каталог /var/log/, что приводит к регулярной раскрутке диска.

    Чтобы уменьшить количество событий, влияющих на обращение к диску можно направить вывод в /tmp/wpa_supplicant.log отредактировав файл
    /usr/share/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service
    [D-BUS Service]
    Name=fi.epitest.hostap.WPASupplicant
    #Exec=/sbin/wpa_supplicant -u -f /var/log/wpa_supplicant.log
    Exec=/sbin/wpa_supplicant -u -f /tmp/wpa_supplicant.log
    User=root

    Перенаправлять вывод wpa_supplicant.log имеет смысл делать, если планируется отключать log файлы (см. laptop-mode).


  • Gnome power manager

    GPM пишет статистику о потреблении энергии примерно раз в минуту в файл, размещаеый в home каталоге, что приводит к регулярной раскрутке диска.

    Vetal1950 предложил элегантное решение. Добавить в /etc/fstab команду монтирования:
    tmpfs  /var/lib/upower    tmpfs    defaults,noatime,nodiratime    0    0



04/11/2011 - Добавлено решение по GPM

пятница, 24 июля 2009 г.

Установка ядра 2.6.30 ubuntu

(Продолжение. Начало статьи)

Хотя эта статья была актуальна для Ubuntu версии до 10.04, я решил ее оставить в ознакомительных целях.
... и как оказалось не зря.

Не все ёгурты одинаково полезны ядра одинаково расходуют электричество. Совсем недавно известный линуксовый сайт Phoronix провел пару исследований о зависимости расхода электричества от верси ядра:

Как видно из представленного графика лучшее, с точки зрения сохранения энергии, ядро 2.6.34. Но оно достаточно старое и может не поддерживать новое оборудование. Поскольку "нужно ехать, а не шашечки" стоит попробавть это ядро.
К сожалению в моем Thinkpad x220 с этим ядром не определился адаптер дисплея, клавиатура и bluetooth.
А в x200s оно работает очень хорошо.

В ядрах поставляемых с Ubuntu 10.10, 11.04 отключен флаг CONFIG_PM_ADVANCED_DEBUG этот флаг позволяет программам типа powertop собирать дополнительную диагностическую информацию. Чтобы установить этот флаг нужно ядро перекомпилировать.

Установка ядра из архива ubuntu


Наиболее простой, надежный и предпочтительный способ.

Выберите приглянувшееся ядро из архива http://kernel.ubuntu.com/~kernel-ppa/mainline

$ wget -c \ http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.30.5/linux-headers-2.6.30-02063005_2.6.30-02063005_all.deb \ http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.30.5/linux-headers-2.6.30-02063005-generic_2.6.30-02063005_i386.deb \ http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.30.5/linux-image-2.6.30-02063005-generic_2.6.30-02063005_i386.deb $ sudo dpkg -i \ linux-headers-2.6.30-02063005_2.6.30-02063005_all.deb \ linux-headers-2.6.30-02063005-generic_2.6.30-02063005_i386.deb \ linux-image-2.6.30-02063005-generic_2.6.30-02063005_i386.deb


Компиляция ядра


В нашем случае смысла не имеет. Большинство патчей, указанных в http://www.lesswatts.org/ уже присутствуют в новом ядре. А те, которые не включены - на потребление влияют слабо.
Все течет, все меняется. И поменялось мое отношение к необходимости компиляции ядра. В борьбе за ватты у меня на ядре 3.1 с патчем 3.1.5-pf получилось потребление в режиме idle чуть больше 6 Вт.


Инструкция по копиляции с наложением указанного патча находится здесь: HowTo: Собираем ядро 3.1 с патчами pf-kernel.
Патч здесь: patch-3.1.5.bz2


Полезные ссылки:

ThinkPad x200s. Что влияет на потребление энергии.

(Продолжение. Начало статьи)

По информации с сайта http://www.gentoo.org/doc/en/power-management-guide.xml влияние компонентов компьютера и операционной системы на потребление энергии примерно такое:


Этот график очень условный и отражает примерное соотношенние потребляемой мощности в каком то из состояний компьютера.

Соотношение между входящими в него компонентами может меняться. Например, мы уменьшили потребление энергии графической подсистемы с 30 до 5 %. Это значит, что доля вклада остальных потребителей энергии увеличилась.

Вот зависимость потребляемой мощности от уровня подсветки дисплея, снятая экперементально для ThinkPad x200s:

Выбирая яркость стоит помнить о реальных ваттах.

Стоит ли экономить миливатты? Я думаю да.
Вот почему. Ubuntu "из коробки" на x200s потребляет около 14 Вт.
0,1 Вт на этом уровне дает прибавку во времени около 0,7% (1,5 мин)

После тюнинга та же Ubuntu потребляет около 7 Вт.
0,1 Вт экономии составляет уже более 5 минут.

Вроде немного, но таких подсистем около десятка.

  • powerTOP

    Я установил powerTOP и выполнил все рекомендации, которые он давал.

    • Текущая версия - 1.11. Версия 1.11 > 1.9

    for i in /sys/class/scsi_host/host*/link_power_management_policy do echo min_power > $i done echo 1500 > /proc/sys/vm/dirty_writeback_centisecs

    Добавить usbcore.autosuspend=1 to the kernel в командную строку grub config, либо
    echo 1 >/sys/module/usbcore/parameters/autosuspend
  • Управление многопоточностью процессора *
    ( -0.1 - 0.0Вт)
    # echo 1 > /sys/devices/system/cpu/sched_mc_power_savings

  • Управление производительностью процессора *
    Устанавливается минимальная частота процессоров
    for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do echo powersave > $i; done

    Частота процессоров меняется в зависимости от нагрузки
    for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do echo ondemand > $i; done

  • Отключение ядер CPU

    for i in /sys/devices/system/cpu/cpu*/online; do echo 1 > $i; done

  • Ethernet *
    Выключение WOL (-0.1Вт)
    # ethtool -s eth0 wol d
    Отключение гигабитного интерфейса (-1.1Вт)
    Эта команда выполняется и дает эффект только когда есть соединение по ethernet. В противном случае выдается ошибка.
    # ethtool -s eth0 autoneg off speed 100

  • Wi-Fi * (от -0.8Вт до -4Вт)
    Можно управлять мощностью сигнала Wi-Fi непосредственно записывая в виртуальный файл "/sys/bus/pci/drivers/iwlagn/0000:03:00.0/power_level"
    # echo 5 > /sys/bus/pci/drivers/iwlagn/0000:03:00.0/power_level

    Но это может не работать в будующих версиях, что и произошло в Ubuntu 10.04. В этой версии виртуальный файл power_level поменял свое название на tx_power.

    Поэтому лучше управлять Wi-Fi картой через программный интерфейс iwconfig

    Установить уровень сигнала передатчика 5dBm и включить автоматический режим сохранения энергии
    # iwconfig wlan0 power on # iwconfig wlan0 txpower 5 # iwconfig wlan0 timeout 500ms
    Может оказаться, что режим энергосбережения не совместим с протоколом B+G+N, который обеспечивает скорости передачи больше, чем 54 Mb/s.
    Поэтому на точке доступа в секции wifi нужно установить протокол 801.11 b/g


  • Управление потреблением звуковой подсистемы
    ( -0.5.0Вт)
    # echo 10 > /sys/module/snd_hda_intel/parameters/power_save

  • Управление вентилятором
    Вентилятор управляется автоматически. Лучше здесь ничего не трогать. Можно и распрощаться с ноутом. Состояние можно посмотреть так:
    # cat /proc/acpi/ibm/fan
    Если уж невмоготу, то здесь написано как управлять вентилятором

  • Управление HDD *
    (-0,5 Вт)
    Еще одна возможность выключения диска
    # hdparm -B 1 -S 12 /dev/sda

  • Отключение HDMI *(-0.2 Вт)
    # xrandr --output HDMI-1 --off # xrandr --output HDMI-2 --off

  • Агрессивное управление PCI*(-1.5 Вт)
    При компиляции ядра была установлена соответсвующая константа CONFIG_PCIEASPM
    Проверить, что эта опция доступна
    # cat /sys/module/pcie_aspm/parameters/policy [default] performance powersave

    Установить режим powersave
    # echo powersave > /sys/module/pcie_aspm/parameters/policy

  • Настройка параметров виртуальной памяти * *
    Уменьшаем количество обращений к диску.
    swappiness - уровень свободной памяти в процентах, при котором система сбрасывает память в swap. При значении 0 swap отключается. (default: 60).
    # echo 10 > /proc/sys/vm/swappiness

    Как часто ядро должно проверять есть ли "грязные" (измененные) данные для записи на диск
    # echo 1500 > /proc/sys/vm/dirty_writeback_centisecs

    Насколько старыми должны быть данные, что бы ядро записало их на диск
    # echo 0 > /proc/sys/vm/dirty_expire_centisecs

    Минимальное процент памяти , где позволено хранить старые данные вместо записи на диск
    # echo 60 > /proc/sys/vm/dirty_background_ratio

    Максимальный размер памяти в процентах, для хранения "грязных" до записи их на диск.
    # echo 95 > /proc/sys/vm/dirty_ratio


Полезные ссылки:


Upd 12/12/2010
Upd 28/07/2011

среда, 22 июля 2009 г.

Купил Lenovo thinkPad x200s

Заплатил 45 000 рублей. Оказался очень замечательным. Обзоров в сети много, поэтому ничего повторять не буду. Приведу спецификацию. Она может пригодиться при компиляции ядра. Опишу только личные ощущения. Дизайн (красивости): никакой. Но это визитная карточка ThinkPad. Эргономика: одна из лучших для ноутбуков. Размер: за счет широкоэкранного дистплея размер чуть больше, чем x60. Благодаря этому клавиатура стала посвободней. Дисплей: качества хорошего, но могли бы сделать побольше разрешение. Скорость работы: на высоте. Убунта встала сразу и без напильника. В целом доволен. Что не нравится - так это время работы. Всего 3,5 часа. Видимо напильник потребуется.

суббота, 18 июля 2009 г.

Сгорел ThinkPad x60 Tablet. Выбираю новый.

Наконец. Он вообще был нелюбимый. Какой то некульный.

Как сгорел - даже никаких эмоций не возникло.

Вот заморочился покупкой нового ноутa.

Требования:

Вес:<= 1.5 кг
Процессор:>= 7
Интерфейсы:LAN, Wi-Fi,Bt

Выбираю из:


Пока думаю ThinkPad X200s - лучший выбор.

Может что еще приглянется

Если, что посоветуете - буду рад.

Появилась мысль сдать после покупки Windows обратно производителю.

Ссылки: