Pull to refresh

Intel/AMD Switchable graphics [Ubuntu 12.04 — 12.10]

Reading time 2 min
Views 32K
Доброго времени суток!

Наконец-то получилось добиться адекватно работающей т. н. «Гибридной графики» на Ubuntu 12.04 LTS (справедливо и для 12.10, также наверняка по этому «мануалу» будет работать и для других Debian-based систем)

В сети есть решения, но честно говоря ни одно из них мне не помогло, сколько я не пробовал.
Например, есть мануал годовой давности от Alexislavie на «Ubuntu Forums» — честно говоря этот способ «убивал» систему 3 раза подряд. Скорее всего проблема в обновлении xorg предложенное там. Да и драйвер там приведен на данный момент весьма старый. Хотя эта инструкция и наиболее близка к правде. Собственно описанный мною способ буквально немного отличается :-) Но работает.

Итак, что же в итоге помогло добиться успеха:

1) Установленная (для чистоты эксперимента — с нуля) Ubuntu 12.04 LTS (х64) со всеми обновлениями по 10 мая 2013 года.

2) Далее берем на сайте производителя драйвер (в моем случае, последний доступный для моей линейки ВК, это amd-catalyst-13.4-linux-x86.x86_64.run).

3) Устанавливаем недостающие пакеты:
sudo apt-get install dpkg-dev execstack debhelper dh-modaliases lib32gcc1 libc6-i386 dkms

4) Далее выполняем: (Спасибо инструкции Alexislavie!)
 cd /usr ; sudo ln -svT lib /usr/lib64

5) Скаченному .run файлу даем права на выполнения:
chmod +x amd-catalyst-13.4-linux-x86.x86_64.run

6) Создаем пакеты:
sudo sh ./amd-catalyst-13.4-linux-x86.x86_64.run --buildpkg Ubuntu/precise

7) Устанавливаем
sudo dpkg -i fglrx*.deb

8) Конфигурируем Xserver:
sudo aticonfig --initial -f

9) Перезагрузка.

10) Проверяем переключение видео карт:
sudo aticonfig --px-dgpu

11) Перезагрузка.

12) Правим конфиг:
gksu gedit /etc/X11/Xsession.d/10fglrx

13) Добавляем к LIBGL_DRIVERS_PATH следующий каталог: /usr/lib/x86_64-linux-gnu/dri/ (разделитель «:»).

14) Перезагрузка. Теперь уже на дискретной ВК,

Переключение ВК выполняется следующими командами
aticonfig --pxl # List current activated GPU
sudo aticonfig --px-dgpu # Activate discrete GPU (High-Performance mode)
sudo aticonfig --px-igpu # Activate integrated GPU (Power-Saving mode)

Что бы изменения вступили в силу нужно перезагрузить Xserver! К сожалению «на горячую» решения нет :-(

Себе для удобства, в .bashrc я добавил пару aliases.
alias gpuamd='sudo aticonfig —px-dgpu && sudo pkill X' 
alias gpuint='sudo aticonfig —px-igpu && sudo pkill X'


Проверить используемый рендер можно например так:
glxinfo | egrep render


Да, чуть не забыл, НЕ пользуйтесь соответствующим пунктом (переключение ВК) в меню ССС!
Если же на каком-то этапе система не загружается, замирая «черным экраном» — идем в консоль, удаляем (или просто восстанавливаем backup) xorg.conf и перезагружаемся.

Если у Вас уже были установлены fglrx пакеты — обязательно нужно почистить от них систему, например так:
sudo apt-get purge fglrx*


Надеюсь, кому-то это поможет :-)

В моем случае используется след. железо:
CPU: Intel Core i5 2430m (Intel HD3000 GPU 0х0116)
VGA: AMD Radeon HD 6650m 2GB GDDR5

П.С.: На счет Ubuntu 12.10 — на сайте производителя заявлена поддержка 12.10, хотя и в стадии «beta»!
П.П.С: За убитую систему и/или потерю данных, если что-то пошло «не так», я не ручаюсь. Все на свой страх и риск.
Tags:
Hubs:
+23
Comments 43
Comments Comments 43

Articles