В предыдщей заметке я описывал использование решения Nvidia Prime для гибридной графики Intel + Nvidia Optimus, которая позволяет выбрать активный графический адаптер на текущую пользовательскую сессию.
Но есть и более гибкое решение этого вопроса - проект BumbleBee, позволяющий запускать именно нужные приложения на нужном графическом адаптере, без необходимости выхода из сеанса. Например логично оставить отрисовку рабочего стола и десктопных приложений не очень требовательному видеоадаптеру от Intel, в то время как игры или другие требовательные к графической подсистеме приложения запускать на дискретном чипе от Nvidia который даст большую производительность.
Рассмотрим установку Bumblebee в Linux Mint 18
Для начала стоит удостовериться что наша система несет на борту Nvidia Optimus, для этого выполним команду
Код: Выделить всё
lspci | egrep 'VGA|3D|Display'
Код: Выделить всё
00:02.0 VGA compatible controller: Intel Corporation Haswell Integrated Graphics Controller (rev 06)
01:00.0 3D controller: NVIDIA Corporation GK106M [GeForce GTX 765M] (rev a1)
nvidia
посмотреть можно в
inxi -G
, поле driver
Установка
Для установки необходимо добавить репозиторий и скачать необходимые для корректной работы пакеты и сам драйвер:
Код: Выделить всё
sudo add-apt-repository ppa:bumblebee/testing -y
sudo add-apt-repository ppa:graphics-drivers/ppa -y
sudo apt-get update
sudo apt-get install bumblebee nvidia-367 nvidia-settings bumblebee-nvidia primus virtualgl linux-headers-$(uname -r) -y
Код: Выделить всё
sudo apt-get install primus-libs-ia32
Конфигурация после установки
Теперь необходимо внести несколько изменений в конфигурационные файлы, откроем фалй настроек для редактирования следующей командой:
Код: Выделить всё
sudo xed /etc/bumblebee/bumblebee.conf
Код: Выделить всё
# (See also the driver-specific sections below)
Driver=
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia-current
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules
Код: Выделить всё
# (See also the driver-specific sections below)
Driver=nvidia
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia-367
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib/nvidia-367:/usr/lib32/nvidia-367
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia-367/xorg,/usr/lib/xorg/modules
Код: Выделить всё
sudo update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf
sudo update-alternatives --set x86_64-linux-gnu_egl_conf /usr/lib/x86_64-linux-gnu/mesa-egl/ld.so.conf
sudo update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf
Код: Выделить всё
echo -e '# 367\nblacklist nvidia-367\nblacklist nvidia-367-updates\nblacklist nvidia-experimental-367' | sudo tee -a /etc/modprobe.d/bumblebee.conf
Теперь необходимо отредактировать grub для отключения используемого по умолчанию в Linux Mint 18 gpumanager. Для этого откроем файл настроек
Код: Выделить всё
sudo xed /etc/default/grub
GRUB_CMDLINE_LINUX=""
добавим значение nogpumanager
Код: Выделить всё
GRUB_CMDLINE_LINUX="nogpumanager"
Код: Выделить всё
sudo update-grub
Примечание пользователям Cinnamon: На этом этапе, вы возможно получите уведомления о крахе рабочего стола Cinnamon. В этом случае, щелкните правой кнопкой мыши на рабочем столе, "Открыть терминал" выйти в терминал с возможностью продолжить выполнение установки следующих пунктов. После них проблемы с запуском рабочей среды должны исчезнуть
Дальнейшая настройка
Теперь потребуется выполнить следующие команды
Код: Выделить всё
sudo dpkg-reconfigure bbswitch-dkms
Код: Выделить всё
sudo dpkg-reconfigure nvidia-367
Теперь можно проверить что у нас получилось, выполнив
Код: Выделить всё
optirun glxgears
glxgears
запущенном без optirun
Использование bumblebee
Как уже может быть понятно для запуска приложений с помощью bumblebee достаточно добавить в начало команды
optirun
, для примера - firefoxКод: Выделить всё
optirun firefox
Для удаления bumblebee можно использовать слежующие команды:
Код: Выделить всё
sudo apt-get purge bumblebee* nvidia* bbswitch* primus* virtualgl*
sudo rm -f /etc/apt/sources.list.d/bumblebee*
sudo rm -f /etc/apt/sources.list.d/graphics-drivers*
sudo apt-get update
