Устранение тиринга на гибридной графике Nvidia

no avatar

Автор темы
ProfessorNavigator
Сообщения: 31
Зарегистрирован: 16 апр 2018, 14:20
Благодарил (а): 1 раз
Поблагодарили: 4 раза
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#21

08 окт 2018, 16:16

StarMAUGLI писал(а):
09 сен 2018, 11:35
а что такое
На сколько я понял - аппаратная проблема. Пытался разобраться, натолкнулся на кучу незнакомых технических терминов на английском языке, вроде "южный мост", махнул рукой. Комп все равно уже у другого человека, проблема решена заменой основной платы (увы). Линукс не причем, это у Асуса какой-то ляп.

no avatar

Genuimous
Сообщения: 4
Зарегистрирован: 27 мар 2019, 13:09
Благодарил (а): 1 раз
Поблагодарили: 7 раз
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#22

27 мар 2019, 14:26

Господа, всем привет. В долгих поисках натунулся на эту тему, и таки победил тиринг! Но есть нюансы.

Моменты, которыми стоит руководствоваться
1. Действительно, большинство советов в инетрнете касается других дистрибутивов: сусе, арч, федора и их производные, в лучшем случае голого дебиан. В семействе убунту эти советы шлляпа и не работают, и, более того, с очень высокой вероятностью приведут к краху системы. Поэтому искать мануалы нужно именно для убунту. Убунта многим хороша, но... она такая убунту.
2. Тиринг касается далеко не всех конфигураций и, в основном, он побежден уже из коробки. Например, на втройках от интел тиринга отродясь не видел. Подозреваю, что в legacy-системах на nvidia тоже все более/менее хорошо. Самые отборные грабли начинаются на сколь-либо нестандартном железе, особенно в случае с гибридной графикой.
3. В линуксе (подозреваю что в винде с этим похуже) есть так называемый режим DRM/DRI (Direct Rendering Manager, см. википедию), котрорый позволяет графическому ускорителю работать, внезапно, в качестве ускортителя, как во времена 3dfx (то есть брать от видеокарты только GPU, а не жестко привязывать вывод картинки к конкретной видеоплате). Это дает всякие занятные плюшки, такие как возможность запустить виртуалку и выдаеть ей на аппаратноем уровне свою персональную видеокарту, а также обрабатывать видеопоток на одном GPU и выводить результат через другой GPU - собственно это нас и интересует в настоящем контексте. Потому что при гибридной графике нужно обрабатывать поток на дискретной карточке, а выводить через встроенную (касаемо SLI, двух дискретных GPU ничего не скажу). Работает оно из коробки, но с тирингом. Описанный в теме параметр как раз включает параметр режима, при котором тиринга быть не должно.
4. В современных версиях Ubuntu (начиная с 18.04) и ее производных все уже готово для того, чтобы режим работал сам собой, но не включен по-умолчанию (что логично, т.к. аппаратно-зависимый). К сожалению, в штатных настройках упоминания о нем нет, потому и много разных домыслов в сети.
5. В убунте есть так называемый "стек" HWE. По сути это набор мета-пакетов и их зависимостей (включая ядро и X подсистему, но, возможно, не ограничиваясь ими). Нужен он лишь для того, чтобы иметь возможность поставить самые современные версии пакетов, не обновляя релиз, потому что в него бекпортируются более новые пакеты, а также в этой ветке быстрее выходят обновления. Чтобы включить HWE, надо поставить пакеты (через sudo apt install --install-recommends linux-generic-hwe-18.04 xserver-xorg-hwe-18.04, где версия - это ubuntu-релиз вашей системы), подробнее см. тут: https://www.linuxuprising.com/2019/02/h ... 2-lts.html - но надо понимать, что если версии вас устраивают, нет абсолютно никакой нужды переходить на HWE, это может быть вредно, хотя отзывы в целом положительные.
6. Чтобы убрать тиринг, нужно прописать параметр nvidia-drm modeset=1, это будет работать только на ядрах 4.13 (лучше 4.15 или 4.18, хотя есть отзывы что на 4.15 не работает, что неверно, хотя, вероятно, речь идет о ранних билдах 4.15) и иксах версии 19 и старше. То есть либо обновляем убунту 16.04 через hwe, либо используем 18.04 или старше (младше 16.04 скорее всего вообще не подойдет).

Тестовая система
Система на платформе Intel Skylake (Intel P630), видеокарта nvidia quadro 600 (описание тут: https://technical.city/ru/video/Quadro- ... phics-P630)
Linux mint 19.1 (на базе ubuntu 18.04), ядро 4.15, X версии 19.6 (или около того, точно не помню)
Драйвер nvidia версии 390 в режиме дискретной графики, вывод изображения через втроенный в системную плату порт HDMI (т.к. на nvidia quadro есть только DP-порты).

Отключение тиринга
Открываем терминал и вводим:
sudo nano /etc/modprobe.d/zz-nvidia-modeset.conf
В моей системе такого файла не было, поэтому он создался. В этот файл пишем:
options nvidia-drm modeset=1
Это будет единственная строка в файле.
!!! обратите внимание, что начиная с версии релиза 18.04 более не нужно указывать версию драйвера (ранее было options nvidia_390_drm modeset=1 где 390 - версия проприетарного драйвера nvidia)
Сохраняем, выходим (Ctrl+X, Y, Enter).

Далее в терминале применяем изменения:
sudo update-initramfs -u

И перезагружаемся:
sudo reboot
(ну или через интерфейс)

Сломаться ничего не должно, в теории, даже если параметр nvidia-drm modeset=1 не применим, это не должно быть проблемой (проверил на виртуалке, вроде нормально).

Проверки
После загрузки проверяем в терминале:
sudo cat /sys/module/nvidia_drm/parameters/modeset
должно написать Y

glxgears
(если такой утилиты нет в системе, надо установить пакет mesa-utils - это стандартное средство для проверки видеокарты наподобие dxdiag в windows)
на экране появятся шестеренки, а в терминале будет частота кадров, она должна быть равна частоте кадров монитора (60 Гц в большинстве случаев, либо частота будет несколько сотен ГЦ и скорее всего тиринг будет присутстовать)

На ютубе поискать tearing test и посмотреть (дерганье картинки это нормально, не должно быть лишь горизонтальных сдвигов), запустить свой любимый тестовый фильм, в котором есть панорамирование сцены на фоне с вертикальными линиями.

Если все тесты пройдены - значит хорошо. Если нет - либо что-то сделано не правильно, либо система не удовлетворяет требованиям, либо не повезло.


Аватара пользователя

slant
Сообщения: 4506
Зарегистрирован: 21 июн 2017, 18:09
Решено: 99
Благодарил (а): 51 раз
Поблагодарили: 1993 раза
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#24

27 мар 2019, 16:20

Вот такого плана материалы для новичков IMHO гораздо полезнее простых пошаговых инструкций. Тут дана теория и объяснения что к чему - для начинающих особо ценно. Учитесь, народ!

Только маленькая коррекция:
Genuimous писал(а):
27 мар 2019, 14:26
либо используем 18.04 или старше (младше 16.04 скорее всего вообще не подойдет).
Эта фраза должна быть построена так: "либо используем 18.04 или младше (старше 16.04 скорее всего вообще не подойдет)."
Версия 16.04 - старше чем 18.04 - она выпущена раньше. И существует, соответственно, дольше.

Аватара пользователя

AlexZ
Сообщения: 1395
Зарегистрирован: 06 янв 2018, 21:06
Решено: 3
Откуда: Горно-Алтайск
Благодарил (а): 212 раз
Поблагодарили: 177 раз
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#25

28 мар 2019, 12:40

Genuimous писал(а):
27 мар 2019, 14:26
Система на платформе Intel Skylake (Intel P630), видеокарта nvidia quadro 600
Это десктоп или ноут?
Genuimous писал(а):
27 мар 2019, 14:26
Потому что при гибридной графике нужно обрабатывать поток на дискретной карточке, а выводить через встроенную
В ноутах это нужно только для тяжелых на графику приложениях, использовать на постоянку нвидиа-карту неоптимально

no avatar

Genuimous
Сообщения: 4
Зарегистрирован: 27 мар 2019, 13:09
Благодарил (а): 1 раз
Поблагодарили: 7 раз
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#26

28 мар 2019, 12:44

AlexZ писал(а):
28 мар 2019, 12:40
Это десктоп или ноут?
Это самосборная приставка к ТВ на платформе SFX, т.е. технологически ближе к десктопу. Там обычный настольный процессор и стандартная PCIe видеокарта, чипсет интел от настольных платформ.

no avatar

Genuimous
Сообщения: 4
Зарегистрирован: 27 мар 2019, 13:09
Благодарил (а): 1 раз
Поблагодарили: 7 раз
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#27

28 мар 2019, 12:57

slant писал(а):
27 мар 2019, 16:20
Эта фраза должна быть построена так: "либо используем 18.04 или младше (старше 16.04 скорее всего вообще не подойдет)."
Версия 16.04 - старше чем 18.04 - она выпущена раньше. И существует, соответственно, дольше.
Мда, натупил. Тогда уж лучше новее/старее. Внезапно понял, что издревле неправильно называю версионность, руководствуясь значением чисел (больше число, значит старше). При этом коллеги понимают, ни разу не было проблем с этим, что особенно странно - значит не я один такой с измененным восприятием. Спасибо за уточнение, учтем : )

Аватара пользователя

slant
Сообщения: 4506
Зарегистрирован: 21 июн 2017, 18:09
Решено: 99
Благодарил (а): 51 раз
Поблагодарили: 1993 раза
Контактная информация:

Устранение тиринга на гибридной графике Nvidia

#28

28 мар 2019, 13:19

Genuimous писал(а):
28 мар 2019, 12:57
Внезапно понял, что издревле неправильно называю версионность, руководствуясь значением чисел (больше число, значит старше).
Тут ситуация, как до недавнего времени с родом слова "Кофе". До последней реформы образования в Росиии у него был строго мужской род, а не как сейчас - правильными стали считать оба варианта. :)
Т.е. понять то поймут многие, но согласно правилам логики построения фраз в языке, и соответственно - грамотно будет... :)

Закрыто

Вернуться в «Песочница»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя