Содержание

Bumblebee

Технология Optimus

Технологии Optimus была создана для оптимизации энергопотребления и увеличения времени работы ноутбука от батареи. Принцип работы технологии Optimus очень прост. Ноутбуки оснащаются двумя видеокартами: intel и nvidia. При использовании ресурсоёмких приложений или игр Nvidia «забирает» на себя работу по обработке изображения, результаты которые передает Intel для дальнейшего их вывода на экран. Когда вся работа с тяжелыми графическими приложениями завершена, видеокарта Nvidia выключается. И дальше обработкой изображения и его выводом занимается только видеокарта Intel.

В Windows поддержка технологии Optimus очень хорошо реализована и пользователю не надо думать когда стоит включать видеокарту Nvidia, т.к. она сама определяет когда нужна ее «помощь» и включается. А вот в линуксе не все так просто. Nvidia не обеспечила линукс полной поддержкой данной технологией. Поэтому необходимо устанавливать и использовать дополнительные приложения, и включать видеокарту nvidia вручную при необходимости.

Поддержка технологии Optimus в основном началась с видеокарт серии 4ххМ (M = mobile мобильная). Если в вашем ноутбуке установлены 2 видеокарты: одна карта nvidia серии 4ххМ и новее и вторая карта intel, то скорее всего ваш ноутбук поддерживает технологию Optimus. Наличие видеокарт можно посмотреть в терминале командой:

lspci -vnn | grep '\''[030[02]\]'

Более точно ответить на вопрос «поддерживает ли ноутбук технологию Optimus» можно только посмотрев его техническую документацию.

Проект Bumblebee

Одно из приложений обеспечивающего поддержку технологии NVIDIA Optimus на ноутбуках с операционными системами GNU/Linux предоставляет проект Bumblebee. Используя Bumblebee вы можете дать команду видеокарте Nvidia заняться процессом обработки изображения, которое потом будет выведено через карту Intel. Когда nvidia не используется, у нее отключается питания, за счет чего уменьшается энергопотребление, ноутбук слабее нагревается и кулеры меньше шумят.

Данное wiki не рассказывает всех деталей установки и использовании bumblebee. Например, не рассматривается установка и использование bumblebee с открытым драйвером. Поэтому если вы хотите узнать больше информации, то можете посетить официальную англоязычную страницу wiki.

Полный комплект Bumblebee состоит из следующих компонентов:

Bumblebee использует один из двух бэкендов для вывода изображения: virtualgl или primus. Самым первым появился virtualgl, который первоначально был задуман для использования передачи изображения по сети. Поэтому вывод изображения через virtualgl трудоёмкий (скопировать изображение, сжать, отправить по сети и вывести на монитор), но не смотря на это virtualgl более стабильный.

Затем был создан Primus, который использует более «прямой» подход для вывода изображения, копируя изображение прямо на вторую видеокарту. Из-за чего в теории использование Primus должно дать прирост производительности по сравнению с virtualgl, так как Primus не выполняет «лишних» действий.

Установка

В Ubuntu 12.04 установка bumblebee выполняется из стороннего репозитория. А вот начиная с Ubuntu 14.04 для установки bumblebee не обязательно использовать сторонние репозитории, все необходимые пакеты уже имеются в официальных репозиториях Ubuntu. Устанавливать проприетарный драйвер nVidia и bumblebee желательно одновременно.

В настоящее время пакет bumblebee поставляется совместно с primus. Чтобы установить virtualg необходимо подключать сторонний репозиторий или скачивать и устанавливать deb-пакеты с сайта http://sourceforge.net/projects/virtualgl/. Про установку bumblebee одновременно с primus и virtualg также рассказывается в разделе Установка драйвера nvidia и полного комплекта bumblebee используя репозитории.

Проекты Bumblebee и Nvidia Prime не совместимы между собой. Поэтому, чтобы правильно установить проприетарный драйвер nVidia и Bumblebee, удалите nvidia-prime или удостоверьтесь в его отсутствии:
sudo apt-get purge nvidia-prime

Также во время выполнения описанных ниже команд нельзя выполнять перезагрузку и выключать компьютер! Желательно сразу последовательно выполнить все шаги установки!

Ubuntu 12.04

Чтобы установить Bumblebee и проприетарный драйвер nVidia вам нужно открыть терминал Ctrl+Alt+T и выполнить следующее:

  1. Обновить Ubuntu до 12.04.5:
    sudo apt-get update
    sudo apt-get dist-upgrade
    sudo apt-get install --install-recommends linux-generic-lts-trusty xserver-xorg-lts-trusty libgl1-mesa-glx-lts-trusty

  2. Добавить репозиторий с обновленным Bumblebee ppa:neon1ks/bumblebee:

    sudo add-apt-repository ppa:neon1ks/bumblebee
    sudo apt-get update

  3. Установить проприетарный драйвер nvidia 331.xx и bumblebee:

    sudo apt-get install --install-recommends nvidia-331 nvidia-settings bumblebee bumblebee-nvidia primus

  4. По желанию можно также установить пакет virtualgl:

    sudo apt-get install --install-recommends virtualgl

  5. Перезагрузить ноутбук

Ubuntu 14.04

  1. Обновить Ubuntu
    sudo apt-get update
    sudo apt-get dist-upgrade

  2. Добавить репозиторий с обновленным Bumblebee ppa:neon1ks/bumblebee:

    sudo add-apt-repository ppa:neon1ks/bumblebee
    sudo apt-get update

  3. Установить проприетарный драйвер nvidia 346 и bumblebee:

    sudo apt-get install --install-recommends nvidia-346 nvidia-settings bumblebee bumblebee-nvidia primus

    Можно вместо nvidia-346 указать драйвер nvidia-340, только использовать надо ядро 3.13 или 3.16 (на ядре 3.19 драйвер nvidia-340 не работает)
    По желанию можно также установить пакет virtualgl:

    sudo apt-get install --install-recommends virtualgl

  4. Если умеете, можете отредактировать конфиг. файл /etc/bumblebee/bumblebee.conf .
  5. Перезагрузить ноутбук.

Ubuntu 15.10

Отключите в настройках текстового редактора gedit, функцию создания резервной копии перед сохранением. Если вы используете другой редактор, то удостоверьтесь, что он не делает резервные копии.

  1. Обновить Ubuntu
    sudo apt-get update
    sudo apt-get dist-upgrade

  2. Установить проприетарный драйвер nvidia 352 и bumblebee:

    sudo apt-get install --install-recommends nvidia-352 nvidia-settings bumblebee bumblebee-nvidia primus

  3. Добавить текущего пользователя в группу безопасности bumblebee:

    sudo gpasswd -a $USER bumblebee

  4. Запускаем демон bumblebeed:

    sudo systemctl enable bumblebeed

  5. Редактируем /etc/modules (на самом деле это ссылка на другой файл, так в ubuntu 15.04 /etc/modules ссылается на файл /etc/modules-load.d/modules.conf)

    sudo gedit /etc/modules

    В который добавляем следующие две строчки:

    i915
    bbswitch

  6. Редактируем конфигурационный файл bumblebee:

    sudo gedit /etc/bumblebee/bumblebee.conf

    • Строка 22

      Driver=nvidia

    • Строка 55

      KernelDriver=nvidia-352

    • Строка 58

      LibraryPath=/usr/lib/nvidia-352:/usr/lib32/nvidia-352

    • Строка 61

      XorgModulePath=/usr/lib/nvidia-352/xorg,/usr/lib/xorg/modules

  7. Перезагрузить ноутбук

Ubuntu 16.04

Установка описана в отдельной статье Bumblebee в Ubuntu 16.04 Xenial Xerus.

Установка драйвера nvidia и полного комплекта bumblebee используя репозитории

Данный пример работает для ubuntu 12.04, 14.04 и 14.10. Также эту инструкцию можно использовать для обновления драйвера nvidia, просто установите новый драйвер поверх старого, который при этом удалится.



Использование

Чтобы запустить приложение, используя видеокарту NVIDIA, откройте терминал и выполните команду:

optirun [options] <application> [application-parameters]

Дополнительные функции


Устранение неисправностей

[ERROR]Cannot access secondary GPU - error: [XORG] (EE) No devices detected.
[ERROR]Aborting because fallback start is disabled.


[ERROR]Cannot access secondary GPU - error: Could not load GPU driver
[ERROR]Aborting because fallback start is disabled.


Bumblebee status: Error (3.2.1): [XORG] (EE) Server terminated successfully (0). Closing log file.


Failed to open VDPAU backend libvdpau_nvidia.so: невозможно открыть разделяемый объектный файл: Нет такого файла или каталога

Если вы будете обновлять драйвер, то не забудьте после его обновления выполнить команду:
sudo rm /usr/lib/libvdpau_nvidia.so

и повторить приведенные выше действия.


Удаление


Поддержка

Часто задаваемые вопросы

Отправка багов и отчетов

Если вы столкнулись с какими-то трудностями, при использовании bumblebee, вы можете

Ссылки

См.также

2010/06/07 18:16
2010/04/12 23:13
2013/10/22 15:44
2010/05/29 18:40
2015/04/22 08:29
2017/05/21 18:15
2014/06/04 14:11
2016/11/22 15:07
2014/06/04 14:39
2013/03/07 09:40
2013/03/06 12:03
2014/06/20 17:56
2014/06/20 17:58
2012/06/22 18:49