На сегодняшний день никого не удивишь наличием в ноутбуках двух видеокарт - дискретной NVidia и интегрированной в процессор серии i3/i5/i7 видеоядром. Реализация технологии NVidia Optimus позволяет автоматически оптимизировать работу от батареи, обеспечивая при этом производительность за счет дискретной карты. Но, к сожалению, это программное решение в полной мере доступно только для пользователей Windows 7 и выше.
Проект Bumblebee (шмель) представляет собой набор инструментов, разработанный с целью поддержки технологии NVidia Optimus Optimus в Linux.
Немного истории
В начале не было ничего. Простые пользователи, имеющие железо с гибридной графикой и при этом не понимающие аппаратную часть железа, пребывали в недоумении, почему старые методы установки драйвера NVidia теперь не пашут - это проявлялось убитым 3D-ускорением, низким разрешением и т.д.
Первой концепцией поддержки гибридной графики в Linux было предоставлено статьей Дэйвом Эрли (Dave Airlie)](http://airlied.livejournal.com/70348.html), разработчиком nouveau. Он назвал свой проект Prime, который является долгосрочным решением поддержки гибридной графики в Linux. Но в связи с осложнениями на сегодняшний момент для большинства пользователей полноценно не готов и по оценкам планируется на 2013 год.
Затем Мартин Джул (Martin Juhl)](http://www.martin-juhl.dk/) предложил обходной путь, основанный на использовании проекта VirtualGL, где запуск приложений карточки Nvidia происходит за счёт использования дополнительного X-сервера и перенаправления 3D-рендеринга между иксами через буфер работающей карточки Intel. Изначально проект обзывался Prime-NG , но т. к. решение поддержки гибридной графики не было похоже на замысел проекта Prime, то проект был переименован в Bumblebee.
Проект развивался, увеличивалось число участников. Появлялись новые возможности, росла онлайн база, содержащая пользовательские конфигурации и т.д. И в какой-то момент некоторые из участников стали более активны по отношению к проекту, чем MrMEEE , считавшие, что команда будет работать куда лучше, чем единое хранилище пользователя, на котором только владелец может одобрять изменения - замедляет проект. В результате разногласия по поводу подхода развития привело к расколу проекта и возникновению команды - TBP/Bumblebee, в то время как MrMEEE продолжает свое развитие под именем Ironhide для Ubuntu.
По словам разработчиков: команда сосредоточена на разработке стабильной и надежной версии Bumblebee с четким разделением развития и стабильной ветки.
Установка
Внимание! Никаких установок из официального репозитория и тем более исходников .run , иначе должного результата не видать.
Для проверки поддержки технологии NVIDIA Optimus выполните:
$ /sbin/lspci -vnn | grep '\''[030[02]\]'
Если отображается две строки, то Ваша аппаратная часть соответствует технологии.
Собственно сама установка:
- Добавьте следующие источники загрузки Bumblebee и Nvidia:
# zypper ar -f http://download.opensuse.org/repositories/home:/tuoma:/Bumblebee/openSUSE_12.1/ Bumblebee_3.0
# zypper ar -f http://download.opensuse.org/repositories/home:/Bumblebee-Project:/nVidia:/295.20/openSUSE_12.1/ nvidia_295.20
2.Обновите репо, скачиванием метаданных и преобразование их в кэш:
# zypper ref
- Установите драйвер и собственно сам проект:
# zypper in kernel-`uname -r | cut -f3 -d"-"`-devel # версия пакета должна совпадать с версией ядра
# zypper in x11-video-nvidia nvidia-compute dkms*
# zypper in bumblebee
- Отредактируйте в файле конфигурации “/etc/bumblebee/bumblebee.conf” следующую строчку:
Driver=nvidia
- Создайте в системе группу Bumblebee и добавьте для нее пользователя:
# groupadd bumblebee
# usermod -a -G bumblebee $USER
- Перезагрузитесь:
# /sbin/shutdown -г now
Использование
Перед вызовом клиента обязательно должен быть запущен демон:
# bumblebeed --daemon
Для получения дополнительных параметров запуска воспользуйтесь:
bumblebeed --help
Для автоматического запуска Bumblebee во время загрузки системы выполните:
# /sbin/chkconfig bumblebeed on
Чтобы использовать дискретную видеокарту Nvidia, выполните:
$ optirun <имя_приложение>
Возможные проблемы
Не работают эффекты рабочего стола встроенной карты Intel?
- удалите файл конфигурации xorg.conf сгенерированный утилитой nvidia-xconfig, если таковой имеется:
# rm -f /etc/X11/xorg.conf
или переместите
mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Не работают 3D-эффекты, а при запуске 3D-приложений в консоли сыпется:
Xlib: extension “GLX” missing on display ":0"
Возможные решения:
- переустановите GLX библиотеки сервера Xorg:
# zypper in -f xorg-x11-server mesa
- полностью переустановите видеоподсистему:
# zypper in -f Mesa xorg-x11 xorg-x11-driver-video xorg-x11-driver-video-intel-legacy xorg-x11-libX11 xorg-x11-server
Нет никакой экономии энергии?
Убедитесь, что параметры загрузки ядра не содержат следующие: pci=noacpi, acpi=off. Текущие параметры загрузки, Вы можете посмотреть, выполнив:
$ cat /proc/cmdline
В логах появляется следующая ошибка:
[ERROR]Cannot access secondary GPU - error: [XORG] (EE) [drm] failed to open device
Если в системе установлен драйвер nvidia и при этом присутствует загруженный модуль nouveau, тогда убедитесь в следующем:
- в наличии строчки “Driver=nvidia” конфигурационного файла “/etc/bumblebee/bumblebee.conf”
- в системе должен присутствовать один из файлов с содержимым “blacklist nouveau”:
/etc/modprobe.d/50-blacklist-nouveau.conf
или
/etc/modprobe.d/nvidia.conf
Если же Вы хотите использовать драйвер nouveau, тогда см. логи.
Значения FPS optirun glxgears меньше, чем glxgears?
Попробуйте вместо инструмента для тестирования glxgears, воспользоваться optirun glxspheres. Для повышения FPS используйте различные методы сжатия, например, optirun-с YUV glxspheres. Для просмотра вариантов обратитесь к справочной странице:
optirun --help
**Файлы **
Конфигурация:
/etc/bumblebee/bumblebee.conf
/etc/bumblebee/xorg.conf.nouveau
/etc/bumblebee/xorg.conf.nvidia
Логи:
/var/log/Xorg.8.log
/var/log/messages
Источники:
https://github.com/Bumblebee-Project/Bumblebee/wiki
Nvidia Optimus и Линукс
Связка видео Intel(встроенная в проц) + nVidia(дискретная) (Страница 1) — openSUSE и Novell SUSE Linux — Linux Forum](http://linuxforum.ru/viewtopic.php?id=17868)
http://forums.opensuse.org/forums/english/get-technical-help-here/how-faq-forums/unreviewed-how-faq/469419-opensuse-12-1-optimus-laptop.html