Как убрать разрыв экрана в 16.04 с nvidia GTX 960 M?

12

Моя установка 16.04 страдает от довольно сильного разрыва экрана. Если я перетаскиваю окно, например, поперек экрана, оно фрагментируется так, что его нижняя часть немного позади верхней части, а при просмотре видео нижняя часть экрана находится на несколько кадров позади верхней части.

Я пробовал решения, приведенные в следующих вопросах, но, к сожалению, ни один из них не помог:

Моя видеокарта - Nvidia GeForce GTX 960M, которую я использую NVIDIA binary driver - version 361.42 from nvidia-361.

Эта проблема также присутствовала, когда я работал 15.10.

Джилли
источник
кажется, буквально ничто не помогает исправить это. Только переход на графику intel, которая отстой.
Riki137
@ Riki137 Как переключиться обратно на графику Intel?
user3728501 30.06.16
То, что произошло 15.10 / 16.04 для предотвращения работы локальных правок, было связано с предполагаемой ошибкой mesa. Так называемое исправление состояло в том, чтобы перейти к настройке режима для Intel при использовании драйверов nvidia через nvidia-prime. Опция без разрывов не может работать с настройкой режима, и один не может переключиться на sna. Это можно обойти, изменив ubuntu-drivers-common и изменив время на сон, чтобы единитель мог обойти ошибку mesa. Но не буду публиковать здесь ответ как не 100% чистое решение. (может иметь пост в UF) В xserver есть исправление, которое может появиться в следующем году в Ubuntu. (или используйте 14.04
Дуг
1
У меня также была эта проблема с Nvidia Quadro M1200, даже после обновления драйвера (до версии 381.09), которая была решена только путем переключения на Intel GPU, как в ответе @ qwr ниже.
Гарретт

Ответы:

16

Легко исправить я нашел на / г /. Добавьте эту команду в ваши команды запуска

nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"

Конечно, это работает, если вы используете драйверы Nvidia.

РЕДАКТИРОВАТЬ: Таким образом, для настройки нескольких мониторов я бы предложил использовать Nvidia X server settingsпрограмму, перейдите X Server Display Configurationи использовать Save to X configuration file. Теперь ищите /etc/X11/xorg.confи добавляйте { ForceCompositionPipeline = On}после каждой настройки монитора (+ 0 + 0 и + что-то + что-то)

Кроме того, вы можете делать sudo apt install comptonи добавлять comptonв ваши команды запуска.

РЕДАКТИРОВАТЬ: я не знаю, как долго это имело место, но программа NVIDIA X Server Settings nvidia-settingsимеет возможность сделать ForceFullCompositionPipeline графически. В меню «Настройка отображения X-сервера» нажмите «Дополнительно ...», установите флажок «Принудительно использовать конвейер полной компоновки» и нажмите «Сохранить в X-файле конфигурации». Если у вас нет предопределенного пути к файлу конфигурации, введите /etc/X11/xorg.confтекстовое поле пути к файлу и сохраните.

Managor
источник
1
Спасибо, это сработало, но это также
nana
... Так что, если это произойдет, просто включите этот дисплей снова в дисплеях.
Нана
Что вы имеете в виду /g/?
Гарретт
3
Что касается других новичков, имейте в виду, что вы можете проверить это в своем терминале, чтобы увидеть, работает ли он (перед добавлением его в скрипт запуска и повторной авторизацией). К сожалению, у меня это не сработало (Nvidia Quadro M1200, nVidia версия 381.09).
Гарретт
Также не работает для меня. Работает GF940M. Похоже, M чипы или компьютеры с включенной встроенной графикой не могут этого сделать.
17
4

Единственное решение, которое я пробовал до сих пор, это что-то не очень хорошее, но это нечто: используйте Intel GPU вместо Nvidia GPU . Это уменьшает большинство разрывов экрана.

В настройках Nvidia X Server ( nvidia-settings) перейдите в Профили PRIME и выберите Intel (режим энергосбережения) . В качестве альтернативы sudo prime-select intel.

Я использую nvidia-370, который является текущим официальным выпуском, с Nvidia 940MX. По иронии судьбы их драйвер все еще хуже, чем драйверы Intel. С другой стороны, время работы от батареи почти удвоилось, так что это был довольно хороший компромисс.

Обновление: при использовании драйверов Intel по умолчанию для ядра 4.7.0 проблем с разрывом экрана нет. nvidia-387 с nomodeset в grub вроде бы нормально, но изменение яркости отключено, поэтому я пока не использую его.

qwr
источник
1

Это немного поздно, но я бы честно предложил вам перейти на XFCE4 или аналогичный некомпозитный DE. По крайней мере, в моем случае (Lenovo Y580, opensuse Leap 42.1 + шмель), таким образом я избавился от разрывов экрана и медленной прокрутки в Firefox. Ура !!!!

гость
источник
2
Доставка вокруг проблемы и ее решение - разные вещи. но приятно, что вы делитесь своим опытом здесь. Добро пожаловать в AskUbuntu!
mook765 10.10.16
Спасибо за предложение - даже XFCE не смог решить мои неприятности с экраном. Я думаю, что мой ноутбук может быть просто проклят. Надеюсь, что это может помочь кому-то еще.
Джилли
1

У меня была эта проблема целую вечность, теперь у меня просто установлен драйвер nouveau. Попробуйте решение из этого поста, мне было бы интересно узнать, работает ли оно: http://ubuntuforums.org/showthread.php?t=2235382

Также это может быть? Но это не сработало для меня ... https://psyq123.wordpress.com/2015/09/20/another-way-to-fix-tearing-and-vsync-issues-using-the-nvidia-driver /

Хорошо, потребовалось немного времени, но я исправил это следующим образом:

Откройте CLI и выполните:

sudo nvidia-xconfig

Потом:

sudo nvidia-settings

Установите разрешение экрана и частоту обновления в Xserverнастройках (я установил на 1920x1200 @ 60hz) и сохраните его вxorg.conf

Затем сделайте:

sudo nano /etc/X11/xorg.conf

Отредактируйте раздел устройства следующим образом:

Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 650"
Option "RegistryDwords" "PerfLevelSrc=0x2222"
Option "TripleBuffer" "True"
EndSection

Это переводит карту в режим производительности и включает тройную буферизацию.

В nvidia-settings/OpenGLкомплекте:

Sync to Vblank
Allow Flipping
Use Conformant Texture Clamping

Сохраните вашу конфигурацию и перезапустите X-сервер.

draoi
источник
3
Я не смог найти опцию для изменения частоты обновления в настройках nvidia, и я также не смог найти опцию для установки Sync на Vblank, Allow Flipping или Use Conformant Texture Clamping. Изменение моего xorg.conf не помогло, возможно, потому что у меня более одного Deviceраздела. Спасибо за ответ, хотя!
Джилли
Действительно неприятная проблема ... подробнее об этом здесь: youtube.com/watch?v=-55y5sgHcbo (также не работает для меня)
draoi
К сожалению, у меня тоже не получилось. Сейчас я просто использую графику Intel и надеюсь, что это будет исправлено в обновлении. Кажется, есть много людей, затронутых этой и аналогичными проблемами.
Джилли
Где находится «Vblank Allow Flipping Use Conformant Texture Clamping»?
user3728501
Я не знаю, похоже, если этот вариант когда-либо существовал, он исчез. По крайней мере, из драйвера nvidia, который устанавливается через диспетчер драйверов. Возможно, вы могли бы попробовать установить драйвер nvidia с веб-сайта nvidia, но вы рискуете потерять свою систему.
Драой