Как отключить дискретную видеокарту ubuntu
$ sudo modprobe lenovo_acpi
FATAL: Error inserting lenovo_acpi (/lib/modules/2.6.35-22-generic/updates/dkms/lenovo_acpi.ko): Kernel does not have module support
$ find /lib/modules/ -name «lenovo_acpi.ko»
/lib/modules/2.6.35-22-generic/updates/dkms/lenovo_acpi.ko
ноут Acer Timeline 3820TG
А как скрипт работает?
Видео переключается только при перезагрузке системы? Перезагрузке X? Или на лету?
Скрипт лишь отключает дискретную видеокарту. Нормальных методов переключения при перезагрузке Х пока нету, а упоминаний о работающем переключении «на лету» в linux и вовсе не видел.
Спасибо! Хотя возможность включать карточку ATI не помешала бы. А что еще можно сделать в Ubuntu чтобы продлить время жизни от батарейки этих ноутбуков? На винде мой 3810еп может и 8 протянуть…
В конце теме есть ссылка на ветку форума посвященную Ubuntu и 3810t — там очень много полезной информации. Основные приемы не отличаются от других ноутбуков.
В Windows 7 без wifi мне удавалось протянуть около 9 часов.
Пока что Fatal error: Kernel does not have module support
Кто-нибудь знает, почему? Ядро стоковое 2.6.32-22-generic, Ubuntu 10.04.
У большинства ноутов от Acer с двумя карточками есть переключатель в биосе: дискретная-встроенная-переключаемая видеокарта.
Это быстрее. Правда. Но не по линуксовому.
Это быстрее лишь если Вы используете только linux. Потому как не хотелось бы перед каждым входом в Windows либо в Ubuntu забывать переключить переключать опицию в BIOS.
Быстрее — возможно, но точно не проще. Я вот пользуюсь и linux и windows и был бы рад в windows использовать переключаемую на ходу графику. Но из-за того, что под линуксом работают одновременно обе карты и не хочется заходить в биос при каждой перезагрузке, мне приходится довольствоваться встроенным видео и там, и там.
У 3810 в биосе есть выбор лишь между Switchable режимом и картой ATI. Если б в биосе можно было выбрать встроенную карту, вопросов бы не возникало.
А теперь представьте, что в течении дня Вы несколько раз переключаетесь между Ubuntu и Windows, а в Windows Вам нужны обе видеокарты. Неужели не надоест переключать в биосе карты?
Я не могу этого представить, т.к. у меня если и запускается Windows, то только под virtualbox'ом :)
Кстати, спасибо за топик, поставил .deb пакет, отключил карту, сейчас буду проверять время работы.
У меня вот асер 1810TZ, там одна видюха, но ноут греется тоже раза в два больше, чем в винде. На харде, к примеру, температура доходит до 50 градусов в простое, в то время как в винде он все время холодный. В какую сторону копать, не подскажете?
Если проблема именно в винте — то в ubuntu есть параметры для включения энергосбережения винчестера. Эти вопросы встречаются очень часто на убунтуфоруме + есть решения для 3810t в теме на которую я дал ссылку.
Подскажите пожалуйста:
Та же проблема, с перегревом ноутбука в Ubuntu.
Видеокарта ATI HD 3470
Ноутбук Dell Studio 1537
P.S.: греется при запуске любого софта.
Ну если видеокарта одна, то скорее всего особенность именно ноутбука. У меня на 3810t тоже ноутбук немного теплее в убунте, чем в винде, но уже не так критично чем с двумя включенными видяхами =)
А если я после
sudo modprobe lenovo_acpi
получаю
Error inserting lenovo_acpi: kernel does not have module support
Что я делаю не так?
Ко мне обращался человек уже с этим вопросом, мы так и не смогли разобраться, но он говорил, что как-то он смог всетаки заставить работать этот метод. Обратитесь к нему лично white_panda, возможно он Вам подскажет более детально.
Странно, у меня почему-то ошибка выдается:
$ sudo alien --script lenovo_acpi-0.1.0-1DKMS.noarch.rpm
chown: changing ownership of `lenovo_acpi-0.1.0//usr/share/lenovo_acpi': Operation not permitted
failed chowning /usr/share/lenovo_acpi to 0:0: Illegal seek at /usr/share/perl5/Alien/Package/Rpm.pm line 282, line 1.
Доброго всем времени суток!
Недавно зайдя на Хабр обнаружил целых два обзора ноутбуков Acer Timeline. Сам я являюсь счастливым обладателем 13.3" модели из этой линейки, что и побудило меня развить эту тему. Дело в том что для работы мне удобнее использовать Ubuntu, которую я и установил на второй день после покупки ноутбука. Ранее я имел дело с убунтой на моем Acer aspire one, на котором у меня абсолютно все заработало «из коробки». В данном же случае все было не столь радужно.
Суть проблемы
Сразу скажу, что о заявленных восьми часах работы пришлось забыть, потому как во многом это время работы достигается программными средствами Windows 7. Работать больше трёх с половиной часов он у меня отказался. Но тут меня насторожила температура корпуса. В Ubuntu ноутбук разогревался раза в два, а то и три больше чем в Windows. После некоторых поисков причины, я обнаружил, что Ubuntu не умеет ни переключать видеокарты «на ходу», ни отключать одну из них. Т.е. обе видеокарты встроенные в эти ноутбуки (и еще множество ноутбуков с двумя видеокартами) будут включены одновременно, потребляя огромное количество энергии впустую. Так как играть в игры под убунтой я не собирался, я решил убрать из системы ненужную видеокарту от ATI. Почитав соответствующие форумы я обнаружил скрипт 'lenovo_acpi', написанный для Lenovo ноутбуков c подобной проблемой. Этот скрипт без единой модификации решил мою проблему, а значит может пригодиться и другим владельцам Timeline-ов.
Перейдем к установке
Для начала нужно скачать rpm пакет по этой ссылке. Чтобы использовать его в Ubuntu, необходимо установить dkms и alien. Устанавливаем:
sudo apt-get install dkms alien
Затем в директории с предварительно скачанным пакетом выполняем следующие команды:
sudo alien --script lenovo_acpi-0.1.0-1DKMS.noarch.rpm
sudo dpkg -i lenovo-acpi_0.1.0-2_all.deb
Проверить модуль можно так:
sudo modprobe lenovo_acpi
Если Вы хотите чтобы модуль загружался каждый раз при запуске системы, просто добавьте 'lenovo_acpi' без кавычек с новой строки в /etc/modules.
Стоит также упомянуть, что в настройках BIOS должен быть установлен режим работы графики «Switchable», а также замечу, что данный метод был проверен лично мною лишь на Ubuntu 10.04.
Послесловие
После установки этого модуля powertop начал показывать более приятные цифры — около 5 часов работы с включенным wi-fi в энергосберегающем режиме. Существуют и другие методы экономии энергии батареи, о которых Вы можете почитать в этой теме на убунтуфоруме.
Надеюсь что эта статья окажется полезной. Также хотелось бы выразить благодарность тов. loll31 который собрал данный пакет для более простой установки под Ubuntu.
Практически все современные ноутбуки обладают двойными видеокартами. Обычно это что то маломощное от интел, и крутая, энергозависимая карта для фильмов и игр от nvidia или ati. Автоматическое переключение довольно часто глючит(Например: может включится крутая видеокарта при работе с документами, а нам нужно сохранить батарею как можно дольше), поэтому рассмотрим способ ручного переключения.
1. Способ. Подходит для все версий linux с ядром 2.6.34 +
«uname -a» узнать свою версию ядра
Для начала узнаем какие видеокарты видит наша система
Появится примерно такие строчки:
00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)
01:00.0 VGA compatible controller: ATI Technologies Inc Juniper [Radeon HD 5750 Series] (rev ff)
Запомним, что 00:02.0 это слабая видеокарта, а 1:00.0 сильная
Теперь посмотрим, какая из видеокарт сейчас работает
Появятся примерно такие строки:
Плюс стоит на против активной видеокарты, а Pwr обозначает, что видеокарта работает и кушает питание. Несложно догадаться, что можно отключить питание от неиспользуемой карточки этим самым ничуть не повредить системе.
а) Если нам нужно обесточить неиспользуемую видеокарту, то выполняем команду:
Батарея ноутбука скажет вам спасибо :)
Если хотим, чтобы лишняя видеокарта отключалась после загрузки системы, то добавляем строчку
в файл /etc/rc.local
б) Если нам нужно, наоборот, включить мощную видеокарту и на неё изначально не подаётся питание то выполняем команды:
sudo echo ON > /sys/kernel/debug/vgaswitcheroo/switch
sudo echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch
DIS — немедленное переключение на дискретную видеокарту
IGD — немедленное переключение на интегрированную видеокарту
DDIS — отложенное переключение на дискретную видеокарту
DIGD — отложенное переключение на интегрированную видеокарту
ON — включить неиспользуемую видеокарту
OFF — выключить неиспользуемую видеокарту
Завершаем сеанс, входим заново и отключаем слабую видеокарту
Должно получится так:
Если вдруг видеокарта вообще не работает, то тут поможет только ремонт ноутбуков. Если с видеокартой всё в порядке, но способ описанные выше кажется сложным, то можно воспользоваться графической программой.
2. Способ. Если на вашем ноутбуке установлена ubuntu и лезть в терминал не хочется, то можно воспользоваться Ubuntu Control Center
После установки и запуска переходим в Hardware>VGA Switching
Тут всё интуитивно понятно.
После выбора видеокарты произойдёт автоматическое завершение сеанса, так что не пугайтесь. Лично мне первый способ показался более красивым :)
Я являюсь рядовым линукс-пользователем и поэтому не стоит от этой статьи ожидать очень умных ходов или нестандартных программистских решений. Все по мануалам. Но раз результат достигнут, значит кому-то кроме меня это может оказаться полезным.
О том, как заставит ноутбук работать под линуксами как можно дольше, написано немало, в том числе и на хабре. В какой-то степени я еще раз соберу все советы воедино, от очевидных до обскурных, заодно опишу несколько проблем и решений, которые у меня оказались достаточно «индивидуальными».
Устанавливал я Ubuntu 10.10 на ноутбук Acer Aspire Timeline 5810TG. Эта машина обладает экраном в почти 16 дюймов и относительно производительным железом, зато батарея достаточно емкая, чтобы ставить с ней личные рекорды.
Содержание поста.
1. Отключаем дискретную видеокарту.
2. Полезные команды для энергосбережения.
3. Проблемы ноутбука (связанные с энергосбережением) и их решения.
4. Автоматизация.
5. Дополнительные советы.
1. Отключаем дискретную видеокарту.
В моем ноутбуке имеется возможность переключаться между встроенным графическим чипом от Intel, маломощным и малотребовательным к электроэнергии, и сравнительно сильной и энергоемкой карте ATI Radeon HD4330. Многие обладатели ноутбуков с переключаемой графикой испытывают проблемы в работе с Linux-системами. Поиск по «ubuntu switchable graphics» на убунтуформус выдает больше 50 страниц тем.
Мне производительная графическая карта нужна редко, поэтому я задался целью отключить ее по умолчанию с возможностью быстрого и безболезненного включения.
Очень много читал те самые 50 страниц форумных тем. А надо было всего лишь заглянуть в убунту-вики или даже попробовать воспользоваться хабрапоиском.
В версиях ядра, начиная с 2.6.34, присутствует механизм vga_switcheroo, позволяющий переключаться между видеокартами. То есть в Ubuntu 10.10 он есть по умолчанию. О том, как им пользоваться, хорошо было написано здесь (см. второй способ) почти год назад, я по-быстрому напомню, что к чему.
Вначале выполним
Зная, какой GPU как обозначается, посмотрим, какой из них в каком состоянии.
Плюсик стоит на против видеочипа, который используется в данный момент, Pwr означает, что видеокарта включена и потребляет энергию.
Важно: у всех моих немногих знакомых, обладающих ноутбуками с двумя видеокартами, картина одинаковая: что бы вы не делали, при загрузке системы обе карты работают, при этом для вывода используется встроенная «слабая» графика. Это нам на руку, ибо обесточивание неактивной видеокарт происходит бескровно.
Команда отключает неиспользуемую GPU сразу же. Поэтому мы обратимся к файлу /etc/rc.local, добавив в него вышеуказанную команду (перед строчкой exit 0). Так, при загрузке систему дискретная видеокарта уже будет отключена и мне не нужно будет беспокоиться ни о чем.
Важно: насколько я могу судить, vga_switcheroo не работает, если установлены проприетарные драйверы на дискретную видеокарту.
Кстати, если вы хотите переключаться между видеокартами через графический интерфейс, установите Ubuntu Control Center. Программа представляет собой панель управления параметрами Ubuntu, но нас она интересует исключительно из-за опции переключения между GPU (естественно, здесь это тоже происходит средствами vga_switcheroo).
Будьте аккуратны с UCC: во-первых, работает кривовато, например, мне необходимо было вначале переключиться на дискретную видеокарту, а лишь затем на встроенную, чтобы обесточить дискретную (либо вначале выполнить echo OFF > /sys/kernel/debug/vgaswitcheroo/switch, а затем переключаться на встроенную GPU). Но работает. Во-вторых, переключение происходит сразу, то есть без спросу выполняется завершение сеанса и приходится вновь залогиниваться.
Больше о переключаемой графике можно почитать в хабрапосте, на который я дал ссылку выше, а также в Убунту-вики и в этом блоге. Я к этому вопросу возвращаться не буду.
2. Полезные советы по энергосбережению.
Собирались эти советы с lesswatts, ubuntuforums, учитывались хинты от powertop, кое-что было найдено случайно.
1) Если у вас стоит убунту на ноутбуке, стопроцентно у вас установлен пакет laptop_mode, оптимизирующий работу компьютера в зависимости от источника питания. Значение 0, посылаемое в /proc/sys/vm/laptop_mode, отключает режим энергосбережения, 5 устанавливает самый агрессивный. Подробнее о том, как именно laptop_mode сберегает энергию, можно прочесть где угодно.
2) Режим энергосбережение для SATA-устройств.
Не знаю, почему у меня в /sys/class/scsi_host/ целых шесть устройств :) Для включения максимального быстродействия выполнить команды с max_performance вместо min_power.
3) По умолчанию в Ubuntu есть четыре профиля работы процессора:
conservative: медленно повышает частоту процессора в зависимости от нагрузки на систему и резко сбрасывает частоту к минимальной при простое.
ondemand: быстро повышает частоту процессора при возрастании нагрузки и медленно сбрасывает частоту к минимуму при простое.
powersave и performance, очевидно, соответствуют минимальной и максимальной частотам CPU. Многие независимые пользователи крайне не советуют использовать режим performance, поэтому даже для работы от сети, когда экономить на ваттах нет смысла, я использую режим ondemand.
4) Параметр 'sched_mc_power_savings' из /sys/devices/system/cpu/ позволяет использовать энергосберегающий режим работы процессора в случае, если у того более одного ядра, благодаря особому распределению нагрузки между ядрами.
5) Встроенные аудио-чипы от Intel (которые принадлежат к т. н. High Definition Audio — HDA) также имеют возможность экономии ватт, если звуковой чип не используется
6) Для того, что выиграть еще чуть-чуть времени работы батареи, можно запретить системе время от времени «опрашивать» cd/dvd-привод на предмет наличия там диска.
7) Можно выключить к черту веб-камеру вместе с драйвером. Не проверял отдельно, но сообщают, что дело очень хорошее при работе от батареи. Естественно, пропустите этот шаг, если вам придется использовать скайп или еще для чего-то понадобится камера.
8) Dirty ratio — максимальный размер памяти (в процентах), для хранения грязных данных прежде чем процесс, их сгенерировавший, будет принужден записать их. Чем выше значение, очевидно, тем реже производится запись и тем меньше активность жесткого диска и системы.
9) Dirty background ratio — минимальное число памяти (в процентах), где позволено хранить гразные данные вместо записи на диск. Этот параметр должен быть намного меньше чем dirty_ratio что бы позволить записывать куски грязных данных за один проход.
10) Dirty Writeback sentisecs — как часто ядро должно проверять есть ли «грязные» (измененные) данные для записи на диск (в сантисекундах). Чем выше значение, очевидно, тем реже используется диск для записи грязных данных.
11) Включение режима энергосбережения PCI Express, как говорят люди, позволяет экономить достаточно много энергии батареи.
3. Некоторые проблемы ноутбука (связанные с энергосбережением) и их решения.
Проблема 1. Не работает изменение яркости экрана. Яркость всегда стоит на максимуме. Это критичный момент для энергосбережения, так как яркая подсветка дисплея съедает уйму электроэнергии. Эта проблема наблюдается на многих ноутбуках, на Acer'ах особенно часто. Симптом: изменение яркости с помощью gnome-апплета не дает эффекта, сколько ползунок не таскай, переключение клавишами FN+Right, FN+Left, или аналогичными Fn-комбинациями вешает систему, помогает лишь хард-ресет.
Решение оказалось не самым практичным, но достаточно простым:
Здесь ХХ принимает значения от 00 до FF в шестнадцатеричной системе. Для работы от батареи я выбрал значение 40, для работы от сети — FF.
Проблема 2. Bluetooth-радио включалось каждый раз при загрузки системы, несмотря на то, что bluetooth-модуль был выключен вручную и убран из автозагрузки. Еще одно решение, которое кому-то понравится очень некрасивым: добавить в /etc/rc.local строку rfkill block bluetooth.
4. Автоматизация.
Путем экспериментов я, в восторге, выяснил, что этот скрипт запускается каждый раз при старте системы. Кроме того, посмотрев содержимое файлов ac и battery в /etc/acpi/events/, я увидел, что скрипт по идее должен вызываться при подключении ноутбука к электросети и отключении от оной. Это логично, но почему-то не работало. Решение пришло быстро, надо было лишь дать необходимые права скрипту power.sh:
Теперь все стало автоматизировано настолько, насколько это возможно.
Вот как выглядит мой скрипт для энергосбережения
Итак, чего удалось достичь? Вот несколько скриншотов.
Работает вай-фай, Google Chrome с пачкой вкладок, у обладателя ноутбука (меня) включен обычный режим веб-серфинга:
Видео в полноэкранном режиме по неизвестной причине ест очень мало ресурсов. Оставив работать лишь qutIM (и вай-фай соединение, конечно), смотреть кино (обычный SD, Xvid) можно чуть ли не девять часов!
Результаты не подтасованые и не сиюминутные. Все взаправду. Перед снятием скриншотов я работал с ноутбуком в своем обычном режиме около 10 минут. Если оставить заряженный полностью ноут и ничего с ним не делать в течение пары минут, то можно увидеть цифры типа 13 часов. Но нам интересен лишь результат в повседневных условиях, не так ли?
Overview.
Краткое руководство к действию: берем скрипт, указанный выше, добавляем его в /etc/acpi/power.sh, делаем power.sh исполняемым, затем добавляем команды выключения bluetooth и дискретной видеокарты в /etc/rc.local.
Вот и все, что я сделал. результаты вы видели выше.
5. Дополнительные советы.
Как еще можно улучшить ситуацию? Да много как, наверное. Из того, что я знаю, но не применял:
1) Многие на форумах советуют команду
hdparm -B 1 -S 12 /dev/sda
Единичка здесь означает самый «агрессивный» режим сбережения энергии жесткого диска. Лично я не смог вытерпеть, что диск замедляется уже через пару секунд после ничего-не-деланья, а разогнаться вновь ему приходится потратить мгновение, что создает эффект лага. Часто паркуется головка хдд. Не очень приятно, к тому же смею предположить, что это еще и изнашивает винт быстрее обычного. 255 вместо 1 отключает энергосбережение жесткого диска вообще. Можете поэкспериментировать с этим у себя, я не против :) Кстати, ковыряние /lib/hdparm/hdparm-functions позволяет найти вот такой кусок кода:
который как бы намекает, что при переключении питания на батарею параметр выставляется 128. Я оставил так, как есть, но данные параметры можно безболезненно редактировать. Думаю, установкой единицы мог бы выиграть еще несколько десятков минут работы. Но комфорт работы важнее. Да, кстати, тут между прочим хочу заметить, что описанные до этого вещи никакого хоть слегка ощутимого дискомфорта в работу с ноутбуком не вносят.
2) Powertop, за неимением других подсказок, все время предлагает для уменьшения энергопотребления отключить USB-порты для устройств, не являющихся носителями информации. Можете использовать это для еще большей экономии энергии, но лично я без юсб-мыши пользоваться ноутбуком ну вообще не могу. Терпеть не могу тачпады.
3) Можно применить опцию noatime к файловой системе. Означает, что не будет вестись лог последнего времени доступа к файлу. Это уменьшит активность системы и жесткого диска. По умолчанию в Ubuntu 10.10, насколько я понял из мануалов, стоит режим relatime, который, если не ошибаюсь, обновляет время доступа лишь в случае внесения изменений в файл. Подробнее об этом, например, тут.
Заключение.
Можно ли достичь того же потрясающего времени работы в Windows? Можно, если и не такого же, то близкого. В Win7 это делается установкой двух пакетов драйверов и двух-трех программ (которые даже без GUI, просто работают в фоне) от Acer, естественно, аналогов для линукса нет.
Так что в этом вопросе можно дополнительно порадоваться за убунту: все делается средствами системы (ядра), и при наличии, например, этого поста, все оуществляется за пару минут и пяток копипаст.
P.S. Прошу прощение за дилетантство, если таковое замечено. Мы совсем недавно встречаемся с Ubuntu.
Для экономии батарейки нотбука, решил отключить дискретную видеокарту. Делал так:
Смотрим как пронумерованы VGA чипсеты
Смотрим какие чипсеты запущены и какой используется системой.
Отключаем дискретную видеокарты
Всё бы хорошо, но терминал выдал ошибку
И добавление в /etc/rc.local
Что я не так делаю?
sudo echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
sudo bash -c «echo OFF > /sys/kernel/debug/vgaswitcheroo/switch»
в rc.local добавить bash -c «echo OFF > /sys/kernel/debug/vgaswitcheroo/switch»?
Это я к тому, откуда bash: /sys/kernel/debug/vgaswitcheroo/switch: Отказано в доступе
sudo echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
(sudo echo OFF) > /sys/kernel/debug/vgaswitcheroo/switch
Т.е. эхо от рута, а запись в файл от юзера.
Можно делать echo OFF | sudo tee /sys/kernel/debug/vgaswitcheroo/switch
Можно сделать скрипт с содержимым echo OFF > /sys/kernel/debug/vgaswitcheroo/switch и запускать его sudo ./script
При загрузке rc.local от чьего имени запускается? от рута? Там никакие bash -c не нужны.
но тут другая проблема, запустил от аккумулятора ноут, обе карты включились, хотя минут 30 назад всё работало и включалась только интелская, а дискретная - нет. что за баг такой? может я что не так делаю?
вот после перезагрузки смотрю
дискретная карта включена, а должна быть выключена
то отключается то нет, не понятно. тупая убунту
Не в тему, но советую закрытый драйвер ATi. Открытый очень плохо работает с энергосбережением. И есть поддержка технологии PowerXpress в Linux. Тогда может не понадобиться отключение.
не знаю какие именно необходимо устанавливать драйвера для своей видеокарты. В консоле показывает как VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Madison [Radeon HD 5000M Series]
на наклейке обозначается как 6550м, человек с этого форума кинул ссылку где говорится что 6550 использует ядро 5000м, вот и не знаю какие драйвера нужно скачивать и уст.
А После установки припроританых драйверов, у меня не открывался каталист центр, вылетала ошибка
нет. я так не делал, но на форуме бубунту говорили что рун-файл некоректно создаёт деб-файл установщика. он создает пакет для установки? значит если это суси - рпм, если федора тоже рпм, если дебиан или убунту - деб, верно?
но мне по прежнему не понятно какие именно драйвера мне необходимо скачивать. Может вы мне поможете?
на наклейке написано HD 6550M
Aй! Я перепутал тебя с другим человеком, которого недавно консультировал по этому же поводу!
Да, Debian/Ubuntu - DEB, остальное RPM.
Так, ну тогда то руководство верное. Создался пакет, ты его установил, и выполнил aticonfig --initial, разлогинился и снова залогинился (или презагрузился). Всё заработало? Тебе может помочь дописывание параметров ядра, допиши nomodeset. И вроде бы этот параметр предлагается в GRUB по F6. Если нет - клавиша Tab.
Читайте также: