В обновлениях ядра Linux 3.0.20 и 3.2.5 устранены проблемы с повышенным энергопотреблением

7 февраля 2012 года

Увидели свет корректирующие выпуски ядра Linux 3.2.5 и 3.0.20, в которых отмечено только одно изменение - интегрирован давно ожидаемый многими пользователями ноутбуков патч(недоступная ссылка), подготовленный ещё в ноябре Мэтью Гарретом (Matthew Garrett) из компании Red Hat. Патч решает проблемы с повышенным потреблением энергии на ноутбуках, поддерживающих технологию ASPM (Active State Power Management) для карт PCI Express. Проблема проявляется начиная с ядра 2.6.38, в котором была реализована новая система инициализации ASPM, и проявляется в повышении энергопотребления на 10-30%.

Изначально патч планировали включить в ветку ядра 3.3 (в ветку 3.2 патч не вошел, так как в момент его выпуска окно по приёму изменений уже было закрыто), но в конце концов посчитали, что ждать ещё несколько месяцев нет смысла. Несмотря на то, что патч признан достаточно зрелым для помещения в стабильную ветку и уже давно используется в ядрах из состава Fedora, рекомендуется проявить осторожность, так как не исключено возникновение регрессий для некоторого специфичного оборудования. Предложенный патч имитирует поведение Windows Vista при инициализации системы управления питанием, т.е. не очищает статус ASPM для всех устройств в процессе загрузки, оставляя параметры, выставленные BIOS. К сожалению, разработчикам приходится двигаться на ощупь, так как в публичном доступе полностью отсутствует какая-либо документация, описывающая, как именно должны взаимодействовать компоненты ОС с ASPM.

Причиной повышения потребления энергии при использовании ядра 2.6.38 и выше является некорректное информирование ОС о поддержке ASPM со стороны BIOS (например, проблема проявляется почти на всех новых моделях ноутбуков ThinkPad). До принятия патча активация ASPM в ядре производилась только при явном сообщении BIOS о наличии поддержки ASPM для карт PCI Express. На практике оказалось, что подобный метод неэффективен, так как BIOS многих систем умалчивает о наличии ASPM, в то время как поддержка данного режима присутствует. Если BIOS не сообщил о поддержке ASPM, ядро Linux обнуляло ASPM-регистры, что приводило к тому, что технология энергосбережения ASPM не использовалась в процессе работы системы, т.е. был постоянно активен режим максимальной производительности. В ситуации, когда BIOS указывал на наличие ASPM, инициализация проходила корректно и проблем не наблюдалось.

Следует отметить, что включения в ядро Linux ожидает ещё один набор патчей Мэтью Гаррета, связанный с оптимизацией работы при корректном уведомлении о наличии ASPM со стороны BIOS. В этом случае также не обошлось без подводных камней. Если системе изначально известно о ASPM, то применяются более агрессивные настройки, чем по умолчанию выставлены прошивкой. Но для отдельных проблемных PCI-E устройств подобные настройки применять оказалось нельзя, поэтому был сформирован чёрный список для индивидуального отключения ASPM. Список устройств, для которых необходимо отключение ASPM был найден через анализ настроек драйверов для платформы Windows, в которой используется подобный обходной путь для более оптимального использования ASPM в системе. В частности, в чёрный список вошли все RAID-контроллеры HP Smart Array (CCISS и HSPA), контроллеры Atheros l1c, l2c, l2cb и l2cb2, l1e, Ethernet-адаптеры J-Micron серии 250 и 260.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «В обновлениях ядра Linux 3.0.20 и 3.2.5 устранены проблемы с повышенным энергопотреблением», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.