Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0  (Прочитано 650426 раз)

0 Пользователей и 5 Гостей просматривают эту тему.

Оффлайн Alextogliatti

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3420 : 13 Июня 2018, 10:41:37 »
Всем привет.
Ситуация следующая.
Ноутбук ASUS N56VZ i7 3610QM. Видеокарты HD4000 и geforce GT 650M.
Стояла UBUNTU 16.04. Сейчас 18.04.
Как в 16.04 так и в 18.04 при скроллинге идут рывки. Перетаскивание окон происходит как бы "с разрушением" окна. При проигрывании видео в SMPlayer (аппаратное ускорение в настройках плеера включено) происходит "горизонтальное разрезание кадра" при перемещении камеры или объекта.
Прошу помощи в избавлении от "дерганий"

Оффлайн wavebvg

  • Активист
  • *
  • Сообщений: 432
  • Никогда не знаешь, чем всё...
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3421 : 14 Июля 2018, 20:30:10 »
ВНИМАНИЕ, НИКАКИХ ДОП. РЕПОВ ДЛЯ ГРАФИКИ И BUMBLEBEE НЕ ИСПОЛЬЗОВАЛОСЬ, ТОЛЬКО РОДНЫЕ ОТ UBUNTU 18.04.
Поставил сейчас Bumblebee на 18.04 из родных репов. Вроде, все очень логично, но неподготовленная психика может не дотянуть до конца настройки.
Итак, оставлю тут сообщение, вдруг кому-то поможет (да и сам почитаю, когда все сломается опять). Предполагается, что драйвера ещё не стоит. Если драйвер на nvidia стоит -- начинаем с п.2.

1. Ставим драйвер, как ни странно, но это пакет nvidia-384, который поставит драйвер версии 390
sudo apt install nvidia-384
И перезагружаемся (*)

2. Проверяем, включился ли драйвер nvidia
sudo prime-select query
и если там не nvidia, то включаем
sudo prime-select nvidia
Перезагружаемся (**)

3. Теперь, когда драйвер nvidia 100% включен. Ставим bumblebee
sudo apt install bumblebee
Добавляем модули в /etc/modules, чтобы избежать эксцессов в будущем:
i915
bbswitch

4. Редактируем файл /etc/bumblebee/bumblebee.conf.

В секции [bumblebeed] прописываем явно драйвер (не верю я этим компьютерам)
Driver=nvidia
В секции [driver-nvidia] вообще всё весело.
Путь к gl:
LibraryPath=/usr/lib/x86_64-linux-gnu:/usr/lib/i386-linux-gnu
До DRM невидии:
XorgModulePath=/usr/lib/x86_64-linux-gnu/nvidia/xorg,/usr/lib/xorg/modules

Вроде всё.
Перезагружаемся (*+**)

Проверяем
optirun --status
Цитировать
Bumblebee status: Ready (3.2.1). X inactive. Discrete video card is off.


Если всё прошло успешно, то мы получаем рабочий вариант, даже HomeWorld2 Remastered под wine работает (это единственное, что 3D у меня требует на компе).

* можно ручками подгрузить/выгрузить необходимые модули ядра
** достаточно перезапустить x-ы


Проблемы и их решения:

1. После обновления ядра либо загружается nvidia всегда или спамит в ядро проблемами загрузки

1.1. Добавляем правило /etc/modprobe.d/bbswitch.conf:

options bbswitch load_state=1 unload_state=1

1.1. Отключаем все принудительно /etc/modprobe.d/blacklist-nvidia.conf:

blacklist nvidia
blacklist nvidia-drm
blacklist nvidia-modeset

1.2. Комментируем правила в /lib/udev/rules.d/71-nvidia.rules

1.3. Добавляем в параметры загрузки ядра (в переменную GRUB_CMDLINE_LINUX_DEFAULT /etc/default/grub)

rcutree.rcu_idle_gp_delay=1

1.4. Обновляем конфигурации

update-initramfs -u
update-grub
« Последнее редактирование: 31 Марта 2020, 22:21:37 от wavebvg »

Оффлайн Dimitry N.

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3422 : 18 Июля 2018, 11:07:46 »
Цитировать
Итак, оставлю тут сообщение, вдруг кому-то поможет
спасибо, в первом приближении помогло.

пара комментариев

ставил сразу nvidia-driver-390. чем предлагаемый вариант с nvidia-384 лучще --- непонятно.

Цитировать
2. Проверяем, включился ли драйвер nvidia
sudo prime-select query
этого может оказаться недостаточно. у меня после установки prime-select показывал nvidia, но драйвер реально включен не был :(
grep nouveau /proc/modules покаывал наличие загруженного модуля nouveau;
и etc.

лечится просто: переключаем на интел:
sudo prime-select intel
и перезагружаем
затем переключаем обратно:
sudo prime-select nvidia
и снова перезагружаем

после этого nouveau магическим образом пропадает из списка загруженных модулей ядра! (спустя две недели безуспешных попыток борьбы с ним)
glxgears -info показывает использование драйвера nvidia для рендеренга. работает. но вот что странно: fps у glxgears на дровах от nvidia получается примерно в два раза ниже чем fps у того же glxgears но на дровах от интел. :( это нормально?

дальше bumblebee ставил по инструкции.
тут просто крик души: ну почему, почему нельзя сразу прописать правильные пути? чтобы bumblebee работал из коробки! еще можно понять, когда пакеты ставятся из сторонних реп, но когда пак добавляли в официальную репу, почему его не привели в соответствие с политикой репы/дистра?

а дальше печалька --- glxgears не работает с optirun, получаю ошибку:
Цитировать
:~$ optirun glxgears
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  155 (GLX)
  Minor opcode of failed request:  11 (X_GLXSwapBuffers)
  Serial number of failed request:  37
  Current serial number in output stream:  38
primus: warning: dropping a frame to avoid deadlock
primus: warning: timeout waiting for display worker
terminate called without an active exception
:-$

что я делаю не так? помогите плиз!
« Последнее редактирование: 18 Июля 2018, 11:24:04 от Dimitry N. »

Morisson

  • Гость
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3423 : 18 Июля 2018, 11:21:33 »
в два раза ниже чем fps у того же glxgears но на дровах от интел.  это нормально?
glxgears - не тест. Проверяйте на реальных приложениях.
Как вы думаете, 1500 фпс- это вообще реально?)) Или 6000?
И качество и работоспособность карты- это не только фпс.

Оффлайн wavebvg

  • Активист
  • *
  • Сообщений: 432
  • Никогда не знаешь, чем всё...
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3424 : 18 Июля 2018, 11:27:38 »
в два раза ниже чем fps у того же glxgears но на дровах от интел.  это нормально?
glxgears - не тест. Проверяйте на реальных приложениях.
Как вы думаете, 1500 фпс- это вообще реально?)) Или 6000?
И качество и работоспособность карты- это не только фпс.
Тут дело в синхронизации. Отключите её -- получите реальное значение, которое выжимает видюха, но оно никому такое не нужно, потому что экран так часто не обновляется.

Оффлайн Dimitry N.

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3425 : 18 Июля 2018, 20:28:34 »
Тут дело в синхронизации. Отключите её -- получите реальное значение, которое выжимает видюха
а как отключить-то? дрова от nvidia плевали с высокой колокольни на vblank_mode. точнее результат fps в glxgears не зависит от значения этой переменной.

кстати, а пакет bumblebee-nvidia для чего? он нужен/не нужен? в предыдущем посте его вроде бы не ставили...

Пользователь добавил сообщение 18 Июля 2018, 20:57:53:
glxgears - не тест
ну почему же? примитивный, но тест. и это больше, чем ничего.

Проверяйте на реальных приложениях
список в студию, пожалуйста. и методику проверки/сравнения тоже. у линукса всегда были проблемы с бенчмарками. так что, чем богаты --- тому и рады.

Как вы думаете, 1500 фпс- это вообще реально?)) Или 6000?
а почему Вы думаете, что не реально? данные цифры означают сколько раз за секунду была обсчитана и отрендерена картинка. а поскольку сцена простая, то цифры вполне реальные.

другое дело, что почему-то далеко не самая хреновая дискретка (GP107M [GeForce GTX 1050 Mobile]) слила в два раза интеграшке от интела. вот мне и интересно, почему.

И качество и работоспособность карты- это не только фпс.
согласен, но речь не об этом...
« Последнее редактирование: 18 Июля 2018, 20:57:53 от Dimitry N. »

Morisson

  • Гость
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3426 : 18 Июля 2018, 21:48:54 »
список в студию, пожалуйста. и методику проверки
Какой еще список и методику? В какую студию? Игру запусти, во многих есть в настройках галочка- фпс выводить на экран и пробуй.
Попробуй на интеле, потом на нвидиа и сравнивай. Уверяю, многие серьезные (относительно) игры на интеле даже не запустятся.
И еше раз- glxgears- не тест. А проверялка базовой работоспособности OpenGL.

Оффлайн Dimitry N.

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3427 : 19 Июля 2018, 10:46:54 »
отправил буку в ждущий режим (даже не гибернацию, просто закрыл крышку у буки) и, после пробуждения, получил ошибку:
Цитировать
:~$ optirun glxgears
[ 1248.552472] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) Failed to load module "mouse" (module does not exist, 0)

[ 1248.552508] [ERROR]Aborting because fallback start is disabled.
как лечить?

ЗЫ: на сайте нвидиа уже дают дрова 390.77, а родные, в дистре всего 390.48
где-то можно найти последние упаковные для убунты? а то с установкой из нвидевкого .run не хочется заморачиваться...

Оффлайн zg_nico

  • Заслуженный пользователь
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3513
  • Nil mortalibus arduum est
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3428 : 19 Июля 2018, 10:55:02 »
где-то можно найти последние упаковные для убунты?
В репозитории производителя. Например, sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt upgrade
В моем случае, к примеру:
Цитата: выхлоп ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
vendor   : NVIDIA Corporation
model    : GM107M [GeForce GTX 960M]
modalias : pci:v000010DEd0000139Bsv00001558sd00001501bc03sc00i00
driver   : xserver-xorg-video-nouveau - distro free builtin
driver   : nvidia-384 - distro non-free
driver   : nvidia-390 - third-party free
driver   : nvidia-396 - third-party free recommended
Выделен тот, который установлен. Интересующий Вас - доступен и помечен как рекомендованный. Пользую CUDA, поэтому не особо тороплюсь обновлять драйвера ("не тронь с трудом налаженный механизм"). Версия системы:
Цитата: вывод lsb_release -a
Distributor ID:   Ubuntu
Description:   Ubuntu 16.04.4 LTS
Release:   16.04
Codename:   xenial
Только гарантии что это решит проблему со сном нету. Может, проблема не только в реализации гибридной графики...
« Последнее редактирование: 19 Июля 2018, 10:57:41 от zg_nico »
Thunderobot G150-D2: Intel SkyLake Core i7-6700HQ 2.60GHz, 8Gb DDR4 2133 MHz, Intel HD530, NVidia GeForce GTX 960M 2Gb.  Ubuntu 16.04 64x [Unity], KUbuntu 18.04 64x.

Оффлайн wavebvg

  • Активист
  • *
  • Сообщений: 432
  • Никогда не знаешь, чем всё...
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3429 : 19 Июля 2018, 13:48:07 »
ну почему, почему нельзя сразу прописать правильные пути?
Ну это понятно: pkg-nvidia-devel@lists.alioth.debian.org -- т.е. пакет без ребрендинга из debian-а, что намекает на устаревание и несоответствие текущему положению дел в Ubuntu.
Есть тикет https://bugs.launchpad.net/ubuntu/+source/bumblebee/+bug/1758243
« Последнее редактирование: 19 Июля 2018, 13:49:53 от wavebvg »

Оффлайн MrEternals

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3430 : 03 Августа 2018, 14:43:10 »
Тоже получил такую ошибку:
(Нажмите, чтобы показать/скрыть)
Удалось забороть так (всё выполняем только если такая же ошибка, как у Дмитрия!):
(Нажмите, чтобы показать/скрыть)

После этих манипуляций ошибка пропала, а optirun glxgears выдал желанные шестерёнки.
Инструкция отсюда. Баг в трекере на гитхабе Bumblebee. Автор также советует отключить демон nvidia-persistenced, но у меня без этого работает. Возникает такая цаца из-за изменений в драйвере NVIDIA, которые несовместимы с bumblebee - это мы и фиксим.
А вообще bumblebee перестал развиваться. Либо его подхватят, либо гемора с установкой гибридной графики в будущем будет больше. На nvidia-prime не кивайте, он у меня вообще не завёлся (не отключает питание дискретки)  :)

Если это не поможет - попробуйте так:
(Нажмите, чтобы показать/скрыть)

Оффлайн www777

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 2777
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3431 : 03 Августа 2018, 17:12:59 »
Цитировать
А вообще bumblebee перестал развиваться. Либо его подхватят, либо гемора с...
В других дистрибутивах Bumblebee просто работает, в том числе даже и там, где нет со стороны дистрибутива официальной поддержки. Похоже, что только в Ubuntu, столько проблем с этой технологией. И кстати что не устраивает тебя в развитии Bumblebee? Развиваться она может только в сторону переписывания с нуля или почти с нуля для поддержки Wayland, что пока практически не требуется. Проблемы дистрибутива, это не проблемы Bumblebee.

Оффлайн MrEternals

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3432 : 03 Августа 2018, 21:46:38 »
И кстати что не устраивает тебя в развитии Bumblebee?
А ведь действительно. Сейчас поглядел как дела у других дистров с этим. Похоже, что такой секас только в убунте.
Тогда всё устраивает. А вот в развитии бубунты - не всё.

UPD: А вообще я пришёл чтобы написать что я делал чтобы завести гибридную графику. Потому что я написал, а потом кто-то сюда придёт, увидит, повторит - и будет доволен. А споры на тему что кого не устраивает - имхо, в этом нет смысла :)

Пользователь добавил сообщение 04 Августа 2018, 13:53:04:
Только что был неприятно удивлён внезапно зажужжавшим кулером ноута. lsmod сказал, что подгружен свободный нвидиевский драйвер. Что, конечно, поломало работу bumblebee.
Чинится так:
sudo systemctl stop nvidia-fallback
sudo systemctl disable nvidia-fallback
Затем ребут.
PS: Вечно что-то ломается. В позапрошлый раз вообще не работал bumblebee, в прошлый раз после N-го ребута внезапно оказалось, что теперь всегда погружается модуль nvidia (хотя он был в блеклисте в modprobe.d и в параметрах ядра). Сейчас вот это. Ubuntuпроблемы блин, аж злость берёт.
« Последнее редактирование: 04 Августа 2018, 13:53:04 от MrEternals »

Morisson

  • Гость
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3433 : 04 Августа 2018, 22:33:09 »
Удалось забороть так (всё выполняем только если такая же ошибка, как у Дмитрия!):
Вообще не понимаю, как это работает.
В конфиге ты блеклистишь модули nvidia, потом блэклистишь, только из параметров ядра, nouveau, и отключаешь управление gpumanager.
После этих манипуляций должен остаться работать только интел)))
Проверь
optirun glxinfo | grep OpenGL

Оффлайн www777

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 2777
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #3434 : 04 Августа 2018, 22:37:01 »
MrEternals, На всякий случай предупреждаю, если ты на свежей LTS релизе Ubuntu, установишь bumblebee из штатных репозториев и у тебя всё заработает, и ты не планируешь переходить на следующий промежуточный релиз, то наверняка после определённого обновления nvidia драйверов твоя ОС не загрузится, это производёт практически 100% рано или поздно если ты сам не будешь вручную контролировать bumblebee, и возможно переписывать конфиги, поэтому и рекомендую сразу использовать сторонний репозиторий, но и с ним может повториться точно так же, если автор репозитория забьёт на обновления.

 

Страница сгенерирована за 0.034 секунд. Запросов: 25.