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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

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

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

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1965 : 26 Декабря 2013, 14:02:17 »
wasp3r,
Классное у тебя разрешение, такое же хочу =)
Могу предложить использовать команду evn
evn vblank_mode=0 PRIMUS_SYNC=1 STEAM_RUNTIME=1 optirun -b primus %command%Или попробовать просто
optirun -b primus %command%
Может это из-за большого разрешения? У меня всего лишь 1366x768.

Пользователь решил продолжить мысль 26 Декабря 2013, 14:08:52:
запускаю sudo nvidia-settings
открывается окно Nvidia X server Settings и маленькое окошко с ошибкой
You do not appear to be using the NVIDIA X driver. Please edit your X configuration file(just run nvidia-xconfig as root), and restart the X server.
Запускать нужно командой
optirun nvidia-settings -c :8
« Последнее редактирование: 26 Декабря 2013, 14:08:52 от neon1ks »

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3267
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1966 : 26 Декабря 2013, 22:19:05 »
neon1ks,
Сейчас проверил и вывел на печать значения переменных, устанавливаемых в /usr/bin/primusrun:
LIB=lib/x86_64-linux-gnu
PRIMUS_DISPLAY=:8 PRIMUS_libGL=/usr/lib/x86_64-linux-gnu/primus
bblibs=/usr/lib/nvidia-331:/usr/lib32/nvidia-331 PRIMUS_libGL=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/nvidia-331:/usr/lib32/nvidia-331
т.е. вроде бы всё как надо.
Вот вывод команды "optirun -vv glxspheres:

[   68.488660] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[   68.489199] [INFO]Configured driver: nvidia
[   68.489407] [DEBUG]optirun version 3.2.1 starting...
[   68.489440] [DEBUG]Active configuration:
[   68.489452] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[   68.489464] [DEBUG] X display: :8
[   68.489475] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia-331:/usr/lib32/nvidia-331
[   68.489486] [DEBUG] Socket path: /var/run/bumblebee.socket
[   68.489497] [DEBUG] Accel/display bridge: primus
[   68.489509] [DEBUG] VGL Compression: proxy
[   68.489520] [DEBUG] VGLrun extra options:
[   68.489531] [DEBUG] Primus LD Path: /usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
[   69.798824] [INFO]Response: Yes. X is active.

[   69.798883] [INFO]Running application using primus.
[   69.799093] [DEBUG]Process glxspheres started, PID 3840.
Polygons in scene: 62464
Visual ID of window: 0xfc
[   69.964551] [DEBUG]SIGCHILD received, but wait failed with No child processes
[   69.964631] [DEBUG]Socket closed.
[   69.964671] [DEBUG]Killing all remaining processes.
И с optirun и с promusrun glxshperes заканчивается крахом.

Ещё не знаю, имеет ли значение, что команда в xterm
vblank_mode=0 primusrun glxshperesне выполняется с сообщением, что нет команды vblank_mode=0 не существует.
Пётр.

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1967 : 27 Декабря 2013, 09:39:45 »
Peter_I,

Ещё не знаю, имеет ли значение, что команда в xterm
vblank_mode=0 primusrun glxshperesне выполняется с сообщением, что нет команды vblank_mode=0 не существует.
xterm по другому работает, попробуй команду ниже
xterm -e /usr/bin/env vblank_mode=0 primusrun glxshperes
1) Ты так и не ответил на мой вопрос,
ладно перемести куда-нибудь или удали директорию /usr/lib/virtualgl/fakelib/ для начала.

2) И запусти glxgears (а не glxspheres)
optirun -vv glxgears
3) Если glxgears работает, значит проблема в самом glxspheres

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3267
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1968 : 27 Декабря 2013, 13:27:16 »
neon1ks,
Благодарю за ответ, посмотрю, что будет без fakelib.
Я пробовал устанавливать vblank_mode=0 в /etc/environment, glxshperes точно так же не работает,
только выдаётся дополнительно сообщение, что перезаписывается значение vblank_mode по умолчанию.
glxgears точно так же не работает, как и glxspheres.
Пётр.

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1969 : 27 Декабря 2013, 18:47:48 »
Peter_I,
vblank_mode=0 отключает вертикальную синхронизацию, она здесь точно не причем. Я даже не уверен стоит ли это делать вообще)

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3267
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1970 : 27 Декабря 2013, 21:23:53 »
neon1ks,
в /usr/lib/virtualgl/fakelib содержатся ссылки вида libGL.so
на librrfaker.so из пакета virtualgl-libs, от него зависит virtualgl.
В virtualgl-libs есть ещё libdlfaker.so и libgefaker.so.
Я попробовал их переместить, но и без них glxspheres и glxgears
заканчиваются крахом, так что я вернул их обратно.
Пётр.

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1971 : 27 Декабря 2013, 22:57:36 »
Peter_I,
(Нажмите, чтобы показать/скрыть)

А почему указывают ссылки на /usr/lib/virtualgl/fakelib,   а не на /usr/lib/ ?
Данные библиотеки лежат у тебя только в /usr/lib/virtualgl/fakelib/ ?

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3267
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1972 : 27 Декабря 2013, 23:25:11 »
neon1ks,
Нет, это в /usr/lib/virtualgl/fakelib/ находятся ссылки, например,
/usr/lib/virtualgl/fakelib/64/libGL.so -> /usr/lib/x86_64-linux-gnu/librrfaker.so
и в этом же каталоге
librrfaker.so -> libGL.soи в fakelib то же самое на библиотеки в i386-linux-gnu.
"ldconfig -p" показывает librrfaker.so.
« Последнее редактирование: 27 Декабря 2013, 23:27:50 от Peter_I »
Пётр.

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1973 : 27 Декабря 2013, 23:43:26 »
1) А здесь есть библиотеки /usr/lib64
find /usr/lib64 -name "libGL*"
Почитал, и правда в пакете virtualgl, библиотеки лежат по адресу /usr/lib/virtualgl/fakelib/ (или подобному)

2) Когда ты запускаешь,например,
optirun -b primus glxgearsбиблиотеки от virtualgl вообще не используются.

Если ты используешь primus, то можно удалить virtualgl и virtualgl-libs (Только после их удаления не будет работать команда glxspheres, но можно использовать glxgears) - заработает ли в этом случае команда
optirun glxgears
(установить заново данные пакеты всегда можно)

P.S. Все видимо я окончательно запутался...

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3267
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1974 : 28 Декабря 2013, 00:02:03 »
neon1ks,
Наоборот, очень благодарен за совет!
Если запустить glxgears командой
optirun -b virtualgl glxgearsто она запускается и fps=920. По команде
optirun -b virtualgl glxspheresона тоже запускается и frames=260 Mpixels/sec.
Так что надо в настройках bumblebee указать virtualgl
и всё будет работать.
Пётр.

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1975 : 28 Декабря 2013, 00:04:06 »
(Нажмите, чтобы показать/скрыть)

Т.е. это вывод через primus не работал - получается...

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 3267
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1976 : 28 Декабря 2013, 10:59:15 »
neon1ks,
Это я просто так напечатал переменные из primusrun, а устанавливались они,
конечно, один раз. При этом, как я где-то раньше говорил, в primisrun
конструкция, содержащая $LIB, была в апострофах и $LIB просто не раскрывалась,
да она и нигде не устанавливалась, пока я сам её не установил в /etc/profile,
а в primusrun не заменил апострофы на "".
Да, очевидно, что через primus не работает. Не знаю, сталкивались ли с этим
другие и от чего это зависит. Может ли это зависеть от hardware?

Насчёт того, надо ли в PRIMUS_libGL включат пути к библиотекам
nvidia - не задумывался, так там сделано.
« Последнее редактирование: 28 Декабря 2013, 11:02:43 от Peter_I »
Пётр.

Оффлайн Legik

  • Новичок
  • *
  • Сообщений: 35
  • Ubuntu 14.04.3
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1977 : 02 Января 2014, 21:27:44 »
wasp3r,
Классное у тебя разрешение, такое же хочу =)
Могу предложить использовать команду evn
evn vblank_mode=0 PRIMUS_SYNC=1 STEAM_RUNTIME=1 optirun -b primus %command%Или попробовать просто
optirun -b primus %command%
Может это из-за большого разрешения? У меня всего лишь 1366x768.
Запустил вот так:
vblank_mode=0 PRIMUS_SYNC=1 STEAM_RUNTIME=1 primusrun %command% На минимальных настройках удалось добиться фпс на старте 60+, но затем (спустя минут 5) падает до 25-35, как будто бы частота видеокарты сбрасывается. Можно пофиксить как-нибудь?

Оффлайн Tranetor

  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1978 : 05 Января 2014, 10:25:51 »
После установки bumblebee стал шуметь кулер на дискретной видеокарте. Сама видеокарта не работает (поток холодного воздуха идет)
optirun --status пишет - Ready (3.2.1) X inactive. Discrete video card is off.
Но кулер шумит. Причем не постоянно а периодически, с интервалом в несколько секунд. Шумит в простое, без нагрузки
« Последнее редактирование: 05 Января 2014, 12:32:03 от Tranetor »

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1183
    • Просмотр профиля
    • Блог молодого разработчика
Re: nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki] v2.0
« Ответ #1979 : 05 Января 2014, 18:12:08 »
wasp3r,
Tranetor,
Затрудняюсь ответить...

Только скажу, что в ноутах кулер идет один одновременно и для процессора, и для видеокарты (могу ошибаться)
Так что кулер может работать из-за загруженного процессора, посмотрите в системной мониторе - никто не грузит зря процессор?

 

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