Я долгое время искал решение этой проблемы после установки проприетарного драйвера NVIDIA.
Используя окружение XFCE, пробовал устанавливать оконный менеджер compton. Но я сторонник чистоты системы и сторонние пакеты меня не устраивали. А решение как всегда лежало на поверхности, которым я и хочу поделиться с вами.
Приступим.
Чтобы убедится в том, что данное решение работает в вашем случае, скопируйте и выполните следующую команду в терминале:
nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceCompositionPipeline = On }"
Ваш монитор может мерцать секунду-две. После чего проверьте сработала ли команда. Проверьте движение скролинга в Fierfox, перемещая окна по экрану. Если же проблема осталась, попробуйте немного изменить команду следующим образом:
nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
Если после выполнения команды разрывов не наблюдается, двигаемся дальше.
Теперь закрепим результат.
Без дальнейших действий весь эффект пропадет после перезагрузки. А также если появились какие-то лаги, перезагрузитесь, значит данное решение вам не подходит.
Итак. Во-первых, необходимо убедиться что у нас есть файл xorg.conf, который находится по пути /etc/X11. Откроем для просмотра данную директорию командой в терминале:
ls /etc/X11
Если он есть, как показано на скриншоте ниже, продолжаем.
Если файла нет, пропустите следующие шаги, но продолжайте читать, в конце статьи я расскажу что нужно сделать в вашем случае.
Тем у кого все в порядке необходимо сделать резервную копию файла xorg.conf следующей командой:
cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Теперь откройте файл в любимом текстовом редакторе с привилегиями суперпользователя. В моем случае, это редактор nano.
Выполните в терминале следующую команду:
sudo nano /etc/X11/xorg.conf
Вы должны увидеть примерно следующее, в разделе Section «Screen»:
Если использовали вариант — ForeFullCompositionPipeline, строка Options «metamodes» , будет выглядеть как на изображении выше.
Если ее нет, добавьте с рабочим для себя вариантом.
У некоторых из вас уже есть опция «metamodes» в вашем файле /etc/X11/xorg.conf, как в примере ниже для настройки с двойным монитором:
Option "metamodes" "VGA-0: 1152x864_60 +0+0, DVI-D-0: 1680x1050_60 +0+864"
Если это так, просто измените строку так, чтобы она выглядела следующим образом:
Option "metamodes" "VGA-0: 1152x864_60 +0+0, DVI-D-0: 1680x1050_60 +0+864 { ForceCompositionPipeline = On }"
И вот теперь перезагружаемся, наслаждаемся плавной картинкой.
Что делать, если у вас отсутствует файл /etc/X11/xorg.conf?
У пользователей Ubuntu и Linux Mint может не оказаться файла xorg.conf по умолчанию. Поэтому для его создания открываем nvidia-settings и переходим в раздел X Server Display Configuration, нажимаем Save to X Configuration File (создаем тем самым необходимый для нас файл xorg.conf).
Пример на скриншоте ниже.
И снимите галочку с Merge with existing file (совместить с существующим файлом).
Проверьте наличие файла xorg.conf и возвращайтесь к началу инструкции.
Всем спасибо за внимание. Надеюсь это кому-то поможет.
P.S. Если вы знаете другие способы решения данной проблемы, поделитесь ими в комментариях.
Автор статьи Максим Жилкин.
Используя окружение XFCE, пробовал устанавливать оконный менеджер compton. Но я сторонник чистоты системы и сторонние пакеты меня не устраивали. А решение как всегда лежало на поверхности, которым я и хочу поделиться с вами.
Приступим.
Чтобы убедится в том, что данное решение работает в вашем случае, скопируйте и выполните следующую команду в терминале:
nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceCompositionPipeline = On }"
Ваш монитор может мерцать секунду-две. После чего проверьте сработала ли команда. Проверьте движение скролинга в Fierfox, перемещая окна по экрану. Если же проблема осталась, попробуйте немного изменить команду следующим образом:
nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
Если после выполнения команды разрывов не наблюдается, двигаемся дальше.
Теперь закрепим результат.
Без дальнейших действий весь эффект пропадет после перезагрузки. А также если появились какие-то лаги, перезагрузитесь, значит данное решение вам не подходит.
Итак. Во-первых, необходимо убедиться что у нас есть файл xorg.conf, который находится по пути /etc/X11. Откроем для просмотра данную директорию командой в терминале:
ls /etc/X11
Если он есть, как показано на скриншоте ниже, продолжаем.
Если файла нет, пропустите следующие шаги, но продолжайте читать, в конце статьи я расскажу что нужно сделать в вашем случае.
Тем у кого все в порядке необходимо сделать резервную копию файла xorg.conf следующей командой:
cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Теперь откройте файл в любимом текстовом редакторе с привилегиями суперпользователя. В моем случае, это редактор nano.
Выполните в терминале следующую команду:
sudo nano /etc/X11/xorg.conf
Вы должны увидеть примерно следующее, в разделе Section «Screen»:
Если использовали вариант — ForeFullCompositionPipeline, строка Options «metamodes» , будет выглядеть как на изображении выше.
Если ее нет, добавьте с рабочим для себя вариантом.
У некоторых из вас уже есть опция «metamodes» в вашем файле /etc/X11/xorg.conf, как в примере ниже для настройки с двойным монитором:
Option "metamodes" "VGA-0: 1152x864_60 +0+0, DVI-D-0: 1680x1050_60 +0+864"
Если это так, просто измените строку так, чтобы она выглядела следующим образом:
Option "metamodes" "VGA-0: 1152x864_60 +0+0, DVI-D-0: 1680x1050_60 +0+864 { ForceCompositionPipeline = On }"
И вот теперь перезагружаемся, наслаждаемся плавной картинкой.
Что делать, если у вас отсутствует файл /etc/X11/xorg.conf?
У пользователей Ubuntu и Linux Mint может не оказаться файла xorg.conf по умолчанию. Поэтому для его создания открываем nvidia-settings и переходим в раздел X Server Display Configuration, нажимаем Save to X Configuration File (создаем тем самым необходимый для нас файл xorg.conf).
Пример на скриншоте ниже.
И снимите галочку с Merge with existing file (совместить с существующим файлом).
Проверьте наличие файла xorg.conf и возвращайтесь к началу инструкции.
Всем спасибо за внимание. Надеюсь это кому-то поможет.
P.S. Если вы знаете другие способы решения данной проблемы, поделитесь ими в комментариях.
Автор статьи Максим Жилкин.
у меня просто в автозапуске запилена команда
ОтветитьУдалитьnvidia-settings -a [gpu:0]/GPUPowerMizerMode=1
тиринга нет
Спасибо тебе, добрый человек, как же меня это бесило...
ОтветитьУдалитьНа Arch просто меняем в XFCE оконный менеджер xfwm4 на гит версию из AUR, перезагружаемся и имеем тонну счастья.
ОтветитьУдалитьCompositor -> full screen repaint
ОтветитьУдалитьВ статье не указано(забыл), но должно работать и в других оболочках и дистрибутивах отличных от deb-based.
ОтветитьУдалитьМаксим, молодец! Хорошая и нужная статья!
ОтветитьУдалитьЗдравствуйте. Подскажите тему оформления, которая использовалась на скринах в этой статье.
ОтветитьУдалитьСтоит Elementary os Loki после установки проприетарного драйвера появилась такая беда, после пробуждения ПК из спящего режима курсор начинает двигаться рывками, мышка беспроводная, если пользоваться тачпадом вместо мышки то работает нормально, проблема точно не в мышке т.к. после удаления проприетарного драйвера все работает нормально. Может это тоже своего рода тиринг? Есть смысл пробовать? Видео - Nvidia gforce g102m
ОтветитьУдалитьСкорее всего нет. Хотя ничего не мешает выполнить одну из команд из начала статьи. В случае неудачи перезагрузитесь и все. WM Loky умеет в композитинг.
Удалитьaxiom- https://www.xfce-look.org/p/1016679/
ОтветитьУдалитьВ NVIDIA X Server Settings есть настройка Force Composition Pipeline и Force Full Composition Pipeline. Просто ставите галочки на против этих настроек, применяете их и сохраняете конфигурацию. https://goo.gl/WAF4Xm
ОтветитьУдалитьSergey, спасибо! Помогла твоя подсказка насчет настроек Nvidia X Server,а то раньше в vlc плеере фильмы дергались, аж бесило))) Стоит Linux Mint Xfce 17.3
УдалитьАнатолий, я рад, что смог помочь тебе. ;)
УдалитьНа старом компе был небольшой тиринг.Там 14.04.Ничё не стал создавать и править.Кинул данную команду в автозапуск и нормально работает.Как вариант.
ОтветитьУдалить+1 Мне тоже помогло.
УдалитьИспользовал опцию
ОтветитьУдалитьOption "metamodes" "HDMI-0: 1920x1080_60 +0+0, DVI-D-0: 1920x1080_60 +0+0 { ForceFullCompositionPipeline = On }"
Синхронизация работает только на телике. Пробовал так:
Option "metamodes" "HDMI-0: 1920x1080_60 +0+0 { ForceFullCompositionPipeline = On }, DVI-D-0: 1920x1080_60 +0+0 { ForceFullCompositionPipeline = On }"
Работает только на мониторе.
Как сделать синхронизацию и на мониторе и на телике?
Я однодисплейные профили юзаю в основном. Т.е. крыса стоит на компе с одним монитором, Циннамон - на ноуте, который при подключении к телеку работает без своего дисплея, используя телек как единственный и основной. В моем случае этот переключатель (нвидиевский, который в Вашем случае выбирал первый в списке девайс и на нем "отключал" тиринг) работает на одно устройство всегда - на один активный дисплей. Кстати, зачем ForceFullComposition? Возможно, достаточно будет ForceComposition.
УдалитьСпасибо дружище,помог.
ОтветитьУдалитьСпасибо огромное!
ОтветитьУдалить