LINUX.ORG.RU

Как отключить композинг в wayland?

 , ,


0

2

Очень понравилось как работает Веленд, все быстро, плавно, но игры (особенно под Вайном) подтормаживают.

Такой же эффект, если в иксах не отключать композинг.

В Плазме композинг можно отключить нажав shift+alt+F12 или через терминал:

qdbus org.kde.KWin /Compositor suspend

qdbus org.kde.KWin /Compositor resume

А как в Вейленде - черт его знает.

Ну и на всякий случай, можно запустить Вейленд и Икс сессии (в разных tty) одновременно?

Заранее спасибо.

Иксы с вайландом можно свободно пускать в разных tty. Они друг другу не мешают. И лучше для игрушек опенбокс голый в иксах запускать.

anonymous
()
Ответ на: комментарий от anonymous

Может кто подсказать команду для запуска Оупенбокса в отдельной икс сессии?

Что-то Яндекс с Гуглом ничего внятного не говорят.

Vochatrak-az-ezm ★★
() автор топика

композинг

Композитинг.

Как отключить [композитинг] в wayland?

Никак, по определению.

intelfx ★★★★★
()
Ответ на: комментарий от BceM_IIpuBeT

Само собой, речь была про иксы. Вот для двух иксов на разных tty надо дополнительные действия по разрешению. А одни иксы и вайланд без проблем, единственное это возможно переменные некоторые поменять, еслии автоматом не работает

anonymous
()

Как уже написали, это не совсем верная формулировка, но прямой вывод полноэкранного окна без ненужных операций должен включаться сам (в kwin_wayland с 5.22). Если есть признаки того, что это не работает - надо выяснять, как отследить переключение этой фичи, и что может препятствовать ее включению (может, гпу не умеет прямой вывод такого буфера, в который рисует приложение). По-хорошему это должно бы логироваться.

shatsky ★★
()
Ответ на: комментарий от intelfx

Чем клиенты xwayland в данном случае отличаются от любого другого вейланд клиента? Точно так же рисуют в свои буферы, только получают их по иксовому протоколу, разве нет? В случае с обычным прямоугольным окном, в которое клиент рисует напрямую - разницы не должно быть. А ты бы не ерничал, а рассказал, что знаешь, ты же вроде спец по граф. стеку.

shatsky ★★
()
Ответ на: комментарий от shatsky

Если я по чему-то и спец, то точно не по графическому стеку :)

Да глюков много с XWayland-ом. То недобитый тиринг восстанет из мёртвых, то direct scanout забудут заимплементить, то вместо правильных фрейм-коллбеков таймер на 60 герц откуда-то ушами торчит, то с NVIDIA-драйвером никак аппаратное ускорение не подвезут, то ещё что-то. Плохо проработанный костыль как он есть.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от Vochatrak-az-ezm

Что-то неочень оно работает (если вообще работает).

А с чего ты взял, что причина тормозов в композитинге, а не в чём-то ещё?

Пока более подробной информации не будет, остаётся только гадать. Может, проблема в неотключаемом VSync (расширение для поддержки отключения VSync находится на стадии разработки).

sudopacman ★★★★★
()
Ответ на: комментарий от intelfx

Можешь сразу выкидывать каку и врубать иксы обратно, тут жизни нет, только тормоза и глюки.

Зачем тогда Габен выпускает Steam Deck, где большая часть «игоря» будет работать через XWayland?

И раз уж про Габена заговорили, то пусть ТС попробует gamescope. Не факт, что поможет, но вдруг.

sudopacman ★★★★★
()
Ответ на: комментарий от sudopacman

С чего - с чего… С того что ровно такой же эффект возникает если в иксах не отключился композитинг. Банальное «экспертное мнение».

По поводу vsync - при включенном принудительно Vsync’е в иксах, такой фигни нет. Так что врядли.

gamescope не помог. Мне вообще не ясно, зачем он нужен и в каких случаях его использовать.

Проблема не с количеством FPS (оно под Вейлендом практически такое же). Проблема в дико рванном фреймтайме. Просто все рывками.

Vochatrak-az-ezm ★★
() автор топика
Ответ на: комментарий от Vochatrak-az-ezm

Проблема не с количеством FPS. Проблема в дико рванном фреймтайме. Просто все рывками.

Вот это уже более известная проблема. Попробуй в настройках композитора потыкать параметр latency.

Можно ещё ограничить FPS в игре частотой обновления монитора.

gamescope не помог. Мне вообще не ясно, зачем он нужен и в каких случаях его использовать.

Он для разных вещей может быть полезен. Ты можешь через него в отдельной tty запустить steam -bigpicture.

sudopacman ★★★★★
()
Ответ на: комментарий от sudopacman

Попробуй в настройках композитора потыкать параметр latency.

Вообще ничего не дало.

Можно ещё ограничить FPS в игре частотой обновления монитора.

Это можно сделать только если видеокарта выдает больше 60 fps. У меня Vega 11 и 30 fps гейминг.

В общем запуск иксов с оупенбоксом в отдельном TTY действительно помогает. Осталось накатать скрипт запускающий иксы > в них оупенбокс > в нем игру и убивающий иксы при закрытии игры.


Никто не подскажет как соорудить запуск игры?

startx "$(command -v openbox)" --:4 "$1" 

или как?

Vochatrak-az-ezm ★★
() автор топика
Ответ на: комментарий от Vochatrak-az-ezm

Если вдруг монитор с VRR, то нагуглилось обсуждение бага в KWin Wayland, из-за которого игры могут тормозить.

Вообще, можно бы и в багзиллу написать.

В общем запуск иксов с оупенбоксом в отдельном TTY действительно помогает. Осталось накатать скрипт запускающий иксы > в них оупенбокс > в нем игру и убивающий иксы при закрытии игры.

А gamescope в отдельном tty тоже не помог?

sudopacman ★★★★★
()

Мне так нравится что единственное решение только для полноэкранных игр. :)

Но ведь не все играют на весь экран. Мне вот лично было всегда удобнее в окне.

a1batross ★★★★★
()
Ответ на: комментарий от Vochatrak-az-ezm

Можно сделать systemctl disable sddm, перезагрузиться, попробовать запустить gamescope из консоли. Если заработает — установить SDDM из git и в /etc/sddm.conf добавить:

[General]
DisplayServer=wayland

Либо заменить SDDM на другой DM, который не требует для своей работы иксы.

Потому что у меня gamesope в tty при активной графической сессии запустился. Правда, у меня kmscon, который отказался после закрытия gamescope нормально работать, поэтому второй раз я без перезагрузки проверить не могу.

sudopacman ★★★★★
()
Ответ на: комментарий от Vochatrak-az-ezm

Ну, тут уже нужно у экспертов спрашивать. Запускай тогда в Openbox (тут я уже точно не подскажу, ибо Openbox никогда не использовал).

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от sudopacman

Борьба с тирингом — для эстетов.

Многие про-геймеры сознательно отключают вертикальную синхронизацию ради получения минимальной задержки.

mertvoprog
()
Ответ на: комментарий от sudopacman

Принудительный композитинг ущербен по очевидной причине — он требует аппаратного ускорения сведения буферов для адекватной работы. Которое не везде доступно.

mertvoprog
()
Ответ на: комментарий от mertvoprog

Многие про-геймеры сознательно отключают вертикальную синхронизацию ради получения минимальной задержки.

Это в играх, а не на десктопе.

sudopacman ★★★★★
()
Ответ на: комментарий от mertvoprog

Я не знаю, о чём у тебя там шла речь и почему ты вообще тиринг приплёл.

И почему людей должен волновать тиринг где-либо, если глаз намётан его игнорировать? ;)

Не знаю, о каких людях идёт речь, но пусть тогда и дальше игнорируют.

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от sudopacman

Куча костылей, а ожидание отрисовки полного кадра всё равно не решают.

Вот взгляните, как Windows 3.0 на очень слабом железе работает. Окна буквально построчно отрисовываются. Как этот ваш софтварный растеризатор с этим справится, пока будет ждать полной дорисовки окна? сколько FPS выдаст? до 0.5 хоть дотянет? ;)))

mertvoprog
()
Ответ на: комментарий от mertvoprog

Как этот ваш софтварный растеризатор с этим справится, пока будет ждать полной дорисовки окна?

Тебе надо, ты и проверяй.

sudopacman ★★★★★
()
Ответ на: комментарий от sudopacman

И где там про тиринг?

Там про тормоза, причиной которых является в том числе борьба с тирингом.

https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/65

Оппа, а в kde-output-management-то про синхронизацию ничего нету, оказывается. Зато VRR есть. Пойдём табличку чинить.

mertvoprog
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.