Linux что такое тиринг

Как убрать тиринг на Nvidia в Ubuntu Linux?

Многие владельцы видеокарт на базе Nvidia сталкиваются с проблемой тиринга на экране. Тиринг — это визуальные артефакты на экране, когда несколько кадров как бы склеиваются в один. Особенно заметен бывает тиринг на динамичных сценах фильмов, при прокрутке страницы или перетаскивании окна. В многомониторных конфигурациях иногда он появляется лишь на одном мониторе.

Проверить наличие тиринга можно на этом видеоролике в полноэкранном режиме.

Как убрать тиринг?

Как же избавиться от тиринга на Nvidia? На самом деле, все просто, и соответствующая опция старательно была добавлена разработчиками проприетарных драйверов.

Для начала следует удостовериться, что у вас установлены проприетарные драйвера Nvidia последней версии — это можно сделать из приложения «Дополнительные драйверы» в Ubuntu.

Далее запускаем приложение NVIDIA X Server Settings (nvidia-settings в терминале). Переходим во вкладку OpenGL Settings и удостовериваемся, что опции «Sync to VBlank» и «Allow Flipping» включены.

Далее переходим на вкладку X Server Display Configuration и нажимаем там Advanced для перехода к расширенным настройкам.

Следует поставить галочки напротив пунктов «Force Composition Pipeline» и «Force Full Composition Pipeline». Если вдруг таких пунктов нет — читаем дополнение ниже! Изменения можно тут же проверить — после нажатия Apply.

Если все хорошо, и тиринг ушел, изменения следует сохранить — для этого нажимаем Save to X Configuration File и сохраняем. Перезагружаемся.

Все, готово, теперь тиринга быть не должно!

Что делать, если опций в NVIDIA X Server Settings нет?

Если в NVIDIA X Server Settings отсутствуют опции «Force Composition Pipeline» и «Force Full Composition Pipeline» — это не проблема, их можно прописать вручную в конфигурационный файл. Однако вы это делаете на свой страх и риск.

Для начала устанавливаем для каждого монитора рабочее разрешение и частоту обновления 60 Гц. Нажимаем Apply, после чего Save to X Configuration File. Однако в файле конфигурации нам надо прописать данные опции, поэтому нажимаем Show preview для редактирования, разворачиваем окно.

Пролистываем файл до Section «Screen». Там должна быть опция metamodes, что-то вроде этого:

Option «metamodes» «1920x1080_60 +0+0»

(+0+0 — это так называемое смещение монитора, используется в случае многомониторных конфигураций)

Наша задача — прописать в конец эти опции, до закрывающих кавычек:

В результате должно получиться нечто следующее:

Сохраняем файл, перезагружаемся — должно работать!

Источник

Еще раз о тиринге

Так как все же избавиться от тиринга в Линуксе? Раньше работал в Windows и там можно было избавиться от тиринга какими-то настройками реестра (сейчас уже не помню, как).

На линуксе от тиринга при перемещении окошек можно избавиться только если использовать OpenGL композитный менеджер. Но в этом случае возникают страшные тормоза при ресайзе окошек. Я пробовал compiz и dcompmanager.

Читайте также:  Linux soffice что это

В настройках ATI Catalyst есть опция, которая убирает тиринг. Но у меня nvidia.

Есть способ убрать тиринг при использовании nvidia?

cast megabaks

Решено

…На линуксе от тиринга при перемещении окошек можно избавиться только если использовать OpenGL композитный менеджер…

Всё в точности до наоборот — пишем в /etc/X11/xorg.conf

Option «Composite» «off»

глобально, надёжно, сухо. Исчезают абсолютна все проблемы с тирингом, поддормаживанием при скроллинге в Firefox (включая при работающем KTorrent), дёрганья в Google Earth, аномалии при проигрывании флэш и XBMC, и многие другие странности. Можно сказать, что проблем практически нет вообще, и цена вопроса — всего лишь отказаться от идиотских перделок.

Есть способ убрать тиринг при использовании nvidia?

щас невидия фанаты набигут и расскажут, что тиринга на нвидии не бывает, это все происки врагов.

Автор — няша, потому что поднял животрепещущий вопрос.

Могу с высокой уверенностью сказать, что проклятый тиринг — это самая серьёзная проблема для меня, которая не даёт полноценно пользоваться Линуксом.

Особую пикантность проблеме добавляет с одной стороны её распространённость, с другой — относительно малое количество обсуждений в интернетах. Особо удручает отсутствие полноценных гайдов по её решению для всех сочетаний видеокарт, драйверов и DE. И по-моему, эти разрывы экранных окон при движении, эти «волны» при вертикальном скроллинге в любых приложениях, особенно в браузере, настолько неприемлемы, что я удивлён, почему толпы разъярённых линуксоидов ещё не штурмуют посольства производителей видеокарт, xorg’а и вообще всех, кто ответственнен за вывод картинки в никсах. Ибо это портит впечатление от работы в графическом интерфейсе начисто.

Да и вообще непонятно, а в чём заключается проблема? Я понимаю, когда речь заходит о повышении FPS, тут действительно, нужно проводить оптимизации, реализовывать сложные алгоритмы и т.д. Но, блин, итти его за ногу, речь ведь о том, чтобы понизить FPS до уже известного значения! Что тут может быть сложного?!

Несколько раз я встречал упоминания, что дескать не получается автоматически определить частоту обновления монитора. Ну так дайте мне вручную её задать, я её знаю, в конце конце концов мы в никсах или в оффтопике?

Итого известна частота обновления монитора, в моём случае это 60 герц. Нужно выводить картинку с видеокарты 60 раз, а видеокарта шпарит на все 200-300. Ну так реализуйте алгоритм:
time_delta = 1 / 60 // 0.0167
if готов_для_отрисовки(очередной_кадр) then
__if предыдущий кадр был отрисован менее time_delta секунд назад, then
____дропаем очередной_кадр
__else
____рисуем очередной_кадр

Что в этом сложного?! Задача даже не для первокурсника — для школьника, изучающего программирование впервые в жизни. И уже столько лет никто не может реализовать это? Я в недоумении.

Что в этом сложного?! Задача даже не для первокурсника

В настройках nvidia есть пункт, включающий синхронизацию в OpenGL приложениях. При этом, если на экране есть хоть одно 3Д приложение (например, glxgears), то тиринга нет при перемещении любых окон. Как только окошко glxgears закрываешь — тиринг появляется снова.

Читайте также:  Adt bundle windows x86 20130729

Там про компиз, а у меня и так в OpenGL приложениях нет тиринга. Но при использовании compiz или dcompmanager возникают жуткие тормоза при ресайзе любого окна, которые ничуть не лучше тиринга.

Задача даже не для первокурсника — для школьника, изучающего программирование впервые в жизни

Так будь мужиком, впили патч.

относительно малое количество обсуждений в интернетах

Может быть это потому, что тиринг присутствует лишь на малой части программно-аппаратных конфигураций?

Попробовал, ни на что не влияет, тиринг меньше не стал.

жуткие тормоза при ресайзе любого окна

Источник

Что вообще такое этот тиринг?

Так много про него говорят, а я вот ни разу его и не видел, наверное. Как он вообще выглядит и что это такое? Где можно пример глянуть?

В гугле забанили?

в гугле есть тесты на ютубе.

это когда что то тырят?
да на каждом углу можно увидеть.

если полоска разделяется на две части, поздравляю у тебя тиринг.

На скольких компьютерах пользовался линукс тоже не видел ни разу. И дрова всегда открытые, ни разу даже блоб не пробовал ставить.

Есть горизонтальная линия, выше которой на экране предыдущий кадр, а ниже — следующий.

Есть горизонтальная линия, выше которой на экране предыдущий кадр, а ниже — следующий.

Не, такого ни разу не видел) Хотя стоп. Кажись было в FreeBSD на VMware.

В ответах настоящая перепись «ньюфагов», которые уже не застали X11 без композитинга, предоставляемого KDE4\5 или Gnome3

ты либо счастливчик из миллионов, либо нагло рассказываешь пчёлам что ты не Винни-Пух! 🙂

Говорят, тиринг только на nvidia проявляется. Я вот тоже его ни разу не видел.

и что с этим делать?

Выключи вертикальную синхронизацию и отключи композитинг и увидишь.

О, у меня точно есть! Но я и без теста замечал, что все ХД-видео проигрывается с такой полоской внизу кадра. Независимо от источника.

P.S. а это лечится?

Как — зависит от оборудования и DE.
В nvidia блобе лечится добавлением в конфигурацию иксов:

Лично меня пару раз спасало, когда игрушка не умела сама ограничивать FPS, в результате сжирала все ресурсы в попытке отрисовать что-нибудь вроде 500 FPS.

я застал, но тиринга не видел

Ну и пусть себе рисует. В менюшках порой бывает и по полторы тыщи фпс и ничего.

Ха-ха, у меня вылечилось отключением эффектов в XFCE.

отличный тред. даже у меня тиринг на штеуде пропал (после небольшого колдунства)

советователям всинка лучи поноса

ты либо счастливчик из миллионов, либо нагло рассказываешь пчёлам что ты не Винни-Пух! 🙂

ХЗ, я предполагаю что этом просто должно быть какое-то разумное объяснение.

Читайте также:  Как сменить пароль ssh linux

Вертикальную синхронизацию рекомендуется отключать чтобы поднять фпс в играх. Иногда помогает поднять скорость передвижения в динамичных сценах. Без вертикальной синхронизации в игре хоть 1000фпс может быть, если железо тянет. Где-то там в этих быстрых кадрах будет спрятан тиринг.

Купи видеокарту Nvidia, увидишь.

Пользовался в последние годы 8600, 9600, 640, 750, 680, K1000M. Все использовал с блобом. XFCE, Gnome 3. Тиринг был на каждой. Ни один совет не помог.

Источник

Решение проблемы тиринга.

Linux системы прекрасны, но их пишут люди, которые тоже могут ошибаться и вносить баги. Есть два трудноуловимых бага, каждый из которых я огрёб в своё время, 1) баг 12309 и 2) тиринг (tearing). Кто-то даже шутит, что эти два бага разработчики нежно переносят из версию в версию, чтобы жизнь пользователей не казалась мёдом.

В данной статье речь пойдёт о таком графическом артефакте как тиринг. Тиринг — это разрывы экрана, которые явно видны на быстрых сменах изображения, например при просмотре видео или игре.


Почему этот баг до сих пор никто не отловил? В статьях часто давал вам материалы от профи по графической части:
Французский программист Julien Danjou, разработчик оконного менеджера Awesome, и его мысли вслух о протоколе X.

Jasper St. Pierre, разработчик GNOME Shell в статье Графический стек Linux.
Что кратко можно уяснить из них? Современный графический стек Linux на базе старого древнего Xorg (X11) очень сложен и состоит из массы компонент.

Наверху этого стека находятся наши с вами оболочки рабочего стола (DE). Часть оболочек типа Gnome, KDE используют композитинг (composite), а часть (типа LXDE или MATE) — нет и не используют аппаратное ускорение. Если вы схватите баг тиринг, то будете шаманить настройками в надежде избавиться от противных разрывов. Главный помощник для вас будет Вертикальная Синхронизация (V-sync), но она может и не помочь.

В самом внизу стека находятся драйвера и если вы используете Nvidia продукцию и проприетарные драйвера у вас относительно новые, то вам доступны опции ForceCompositionPipeline и ForceFullCompositionPipeline.

Прежде чем начать, стоит вас предупредить что вышеперечисленные опции могут привести к падению производительности OpenGL приложений и вам стоит промониторить сей момент.

Вначале в Терминале попробуйте команду nvidia-settings —assign CurrentMetaMode=»nvidia-auto-select +0+0 < ForceCompositionPipeline = On >» , если у вас единственный монитор. Если у вас многомониторная конфигурация, то +0+0 вам придётся изменить.

Если у вас чёрный экран или начались проблемы, то сделайте рестарт. Вам помогут магические кнопки Alt + SysRq + R,E,I,S,U,B.

Если всё в норме, то тестируйте. Прокрутка страниц в браузере, проигрывание видео в оконном и полноэкранном режиме, быстрое перемещение окон на экране не должны выявить что тиринг остался. Если тиринг исчез, то я вас искренне поздравляю и вам осталось лишь автоматизировать сей процесс. Раньше, когда по планете ходили динозавры, я дал бы совет внести строку

Источник

Оцените статью