LINUX.ORG.RU

Разработчики САПР KiCad раскритиковали Wayland и рекомендовали использовать X11

 , ,


3

6

Разработчики свободной системы автоматизированного проектирования печатных плат KiCad рассказали о состоянии реализации поддержки Wayland и обобщили проблемы, мешающие полноценному использованию данного протокола. Пользователям, профессионально проектирующим печатные платы в KiCad или желающим получить стабильное и полнофункциональное окружение, рекомендовано запускать KiCad в средах рабочего стола на базе протокола X11, таких как Xfce, MATE или X11-сеанс KDE Plasma.

Тем кто намерен использовать KiCad в окружениях с Wayland следует быть готовым к возможным зависаниям и аварийным завершениям, невозможности восстановить желаемую раскладку окон и ограничению функциональности интерфейса. Утверждается, что ограничения в функциональности вызваны отсутствием в Wayland возможностей, давно применяемых в приложениях для X11, Windows и macOS, таких как поддержка позиционирования окон и мгновенного перемещения указателя мыши (cursor warp).

Что касается возникающих сбоев, то они связываются с большой фрагментацией композитных серверов для Wayland. GNOME, KDE и обособленные композитные менеджеры по-своему интерпретируют протоколы Wayland, поэтому полагаться при разработке на единую целостную реализацию протоколов Wayland и экспериментальные расширения проблематично. Разработчикам приложений приходится учитывать особенности каждого окружения и применять костыли для обхода проблем, специфичных для разных композитных менеджеров.

Фрагментация композитных серверов существенно увеличивает трудозатраты на реализацию поддержки Wayland. Отмечается, что самое неприятное в том, что разработчики KiCad не имеют возможности исправить возникающие проблемы своими силами, так как проблемы присутствуют не в KiСad, а в протоколах, оконных менеджерах и композитных серверах.

Учитывая, что Linux применяет лишь небольшая часть пользователей KiCad, решено избегать добавления в кодовую базу проекта костылей для обхода проблем, специфичных для оконных менеджеров, но при этом продолжать собирать KiCad для Wayland и тестировать сборки на совместимость. Все выявляемые проблемы и ограничения планируют документировать и доводить до сведения пользователей.

В системе отслеживания ошибок решено не разбирать жалобы от пользователей Wayland, связанные с позиционированием и размером окон, установкой фокуса, а также зависаниями, аварийными завершениями, повышенной нагрузке на CPU, проблемами с устройствами ввода и сбоями при отрисовке, не проявляющимися в сборке для X11.

Среди известных проблем, которые находятся вне зоны влияния разработчиков KiCad и которые не удаётся устранить на стороне KiCad:

  • Проблемы с управлением окнами: Невозможность управления позицией окон и панелей (при открытии KiCad нельзя запомнить и восстановить положение окон и панелей инструментов). Проблемы с координацией работы одновременно с несколькими окнами. Ограничение возможности перемещения вкладок и панелей между разными областями.
  • Проблемы с устройствами ввода: Возможность мгновенного перемещения курсора (cursor warping) завязана на необязательные экспериментальные расширения протокола, поддерживаемые лишь в отдельных композитных менеджерах. Непредсказуемое поведение при управлении фокусом ввода. Проблемы при использовании специализированных устройств ввода и при обработке горячих клавиш.
  • Проблемы со стабильностью и производительностью: Повышенное потребление ресурсов и высокая нагрузка на CPU/GPU по сравнению с использованием X11. Появление графических артефактов при отрисовке и нарушение нормального вывода. Зависания и аварийные завершения, проявляющиеся только при работе в окружениях на базе Wayland. Ненадёжная работа с буфером обмена.
  • Ограничения интерфейса пользователя: Проблемы с позиционированием, фокусом и взаимодействием в модальных диалогах. Проблемы с запуском внешних приложений и управления ими.

>>> Подробности (opennet)

★★★★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 1)

Всегда после установки дистрибутива загружаюсь в лайв сд, чрутюсь и сношу под 0 весь вейланд. И только потом загружаюсь как обычно.

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

На Windows его тоже можно включить, но обычно геймеры предпочитают в любом случае его отключать. То есть ноль преимуществ против Xorg/Windows.

Открыл настройки дисплея в кедах под вяленым. Лицезрею чекбокс Screen tearing: Enable in fullscreen windows. Это не оно ли, ммм?

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

А как тогда разложить окна по нескольким мониторам?

Установить x11, запустить кикад, разложить окна на мониторам, написать на форуме какой вейланд ущербный, почувствовать довольство собой.

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

Я по памяти процитировал описание протокола вводящего тиринг в Wayland. Я не отрицал что в Wayland есть тиринг. Я говорю что он не имеет волшебных свойств показывать картинку без тиринга и без какого либо вида синхронизации одновременно.

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

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

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

Ну, вейландосектанты уже затерпели и таки реализовали нужные фичи :)

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

Единственный механизм которым Wayland это может обеспечить, это принудительный V-Sync, который там и есть. На Windows его тоже можно включить, но обычно геймеры предпочитают в любом случае его отключать. То есть ноль преимуществ против Xorg/Windows.

Он и с выключенным любым видом синхронизации (V/G-Sync) понижает задержку ввода.

Не знаешь ты ничего о Wayland, но зато комментируешь же как. Я абсолютно все игры запускаю без vsync, 30 кадров или 400, никакого намека на тиринг нет.

В Wayland используется zero-copy и гибридная буферизация. Не нужны твои зеленые костыли в нём.

Это значит что картинка перерисовывается так быстро, что ты скорее всего не сможешь увидеть тиринг. Если реально тиринг есть, то нужно включить ограничение кадров но не V-Sync.

Ты сам себя своим же видео опровергаешь.

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

То, что в Wayland будет добавлено ещё некоторое количество расширений, как в своё время в иксы, я не сомневаюсь. Вполне возможно, что и по просьбам разработчиков не плееров.

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

Не знаешь ты ничего о Wayland, но зато комментируешь же как.

Ну так расскажи.

В Wayland используется ...

Это протокол. Конкретно говори, какая реализация что использует, желательно со ссылками. Zero-Copy никак на тиринг не влияет.

Ты сам себя своим же видео опровергаешь.

Я видео не смотрел. Можно конечно V-Sync включить с G-Sync, тогда до частоты монитора будет работать G-Sync а после включаться V-Sync, но обычно рекомендуют снижать частоту кадров программно.

MOPKOBKA ★★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 2)
Ответ на: комментарий от Qui-Gon

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

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

Я видео не смотрел.

Сцк, я аж поперхнулся :)

Т.е. ты реально привел в виде аргумента видео с таймкодом(sic!), тебе несколько раз приводили в качестве контраргумента то же самое видео, но с другими таймкодами, а теперь ты его, оказывается, не смотрел? А таймкод изначальный откуда? Разработчики САПР KiCad раскритиковали Wayland и рекомендовали использовать X11 (комментарий)

Это уже какая-то запредельная хуцпа, ну серьезно, блин :)

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

Я загуглил «NVIDIA Reflex» и в случайном видео прокрутил до момента где измеряется задержка монитора, этот процесс я сразу узнал потому что видел много других видео где демонстрируется NVIDIA Reflex Analyzer. Изначально просили показать монитор с NVIDIA, я все предоставил.

Зачем мне смотреть видео? У меня у самого NVIDIA и Reflex работает. Это амудефанатам можно полакомиться взглядом.

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

Да все проще. Если на компе оффтоп, то инфа уже давно вытащена встроенным кейлоггером и автоматической скриншотилкой.

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

вот по NVIDIA Reflex, про недоступную для амудефанатов технологию

Т.е. ты просто куда-то там прокрутил, но сам смотреть не стал. Что не помешало тебе это предоставить как аргумент для твоей ругани в адрес людей, выбравших другого производителя видеокарт, я правильно понял?

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

я правильно понял?

Нет, понимание это не для амудефанатов. Им главное знать куда деньги амуде нести. Что то читать, узнавать - это все не про них. Но я очень милосерден, давай еще раз: У меня просили видео монитора с NVIDIA, я его предоставил с нужным таймкодом, тиринга там нету.

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

Zero-Copy никак на тиринг не влияет.

Zero-Copy влияет на input lag.

Ну так расскажи.

https://www.phoronix.com/news/Linux-6.8-Atomic-Async-Flips

wayland + opensource drivers.

На Plasma это wp_tearing_control_manager_v1

Я видео не смотрел.

Ну всё понятно. Нвидиафанатики как всегда.

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

Ненене, пятизвездочный кусок ничтожества. Тебе несколько раз давали опровержения из того же, блин, видео. Так публично обгадиться и заявлять что тебе в шаровары каловые массы залили «амудефанаты» - это надо особо постараться. Причем неоднократно.

Ты просто нелепое быдло, которое не разбирается в том, о чем говорит, вот и все. Удачи в жизни, клоун, тебе она явно нужна.

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

https://www.phoronix.com/news/Linux-6.8-Atomic-Async-Flips

Круто, давай почитаем документацию:

Попросите, чтобы перелистывание страниц было выполнено как можно скорее, т.е. без задержка из-за ожидания vblank. Это может привести к разрывам, которые будут видны на экран.

Далее:

На Plasma это wp_tearing_control_manager_v1

Это протокол. Давай почитаем что там, два режима: Tearing, V-Sync.

ВЫВОД: Амудефанаты неумеют читать, копипастят аргументы из нейронки скорее всего, сами думать неспособны.

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

Правильно, а wp_tearing_control_manager_v1 не даёт этому разрыву случиться. Поэтому имеем количество кадров выше частоты vsync c низким инпут лагом и полным отсутствием тиринга. Лишние кадры просто выкидываются.

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

Ну там две картинки, справа и слева. Справа оригинал без тиринга, который и отображается у автора, слева он просто отзеркалил кусок и добавил эффект тиринга в видеоредакторе, добавив огромную надпись за пару секунд до этого SIMULATED. Может ли амудефанат сделать какой то вывод из этого?

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

Ещё раз, это кадры без vsync и c vsync. Ты посмотри про что тема. Как снизить лаг при включенном vsync!

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

Правильно, а wp_tearing_control_manager_v1 не даёт этому разрыву случиться.

Давай еще раз, мне кажется ты даже мой комментарий не смог прочесть. wp_tearing_control_manager_v1 предлагает два режима, Tearing и V-Sync. Если он не дает тирингу случится, то это режим V-Sync. Такой же, какой включается в Windows и Xorg.

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

Ну да. В этом весь смысл LOR. Кекать с пожилых задротов.

«Но есть нюанс» (с)

ЛОР сам по себе не молодеет.

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

Ужас. Ещё раз, в композиторе ты включаешь vsync, но в приложении типа «Игра» ты его выключаешь. В итоге в игре неограниченное число FPS, а композитор выкидывает кадры вместо их склейки. Нет тиринга, но при этом низкий инпут лаг.

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

в приложении типа «Игра» ты ... (включаешь Tearing mode)
а композитор выкидывает кадры (не показывает их, реализует V-Sync)
но при этом низкий инпут лаг

Шизофрения. Если композитор выкидывает кадры, то он вносит задержку вместо того что бы реагировать, если он не выкидывает кадры, то будет тиринг. Определяйся.

Давай я не буду тебя мучить, просто сообщу что идеального решения нету, либо синхронизация в каком то виде, либо тиринг. Это не зависит от графического сервера, просто это реальность.

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

Если реально тиринг есть, то нужно включить ограничение кадров но не V-Sync.

@

Ему буквально объясняют framelimit, пусть и слегка странно.

@

либо синхронизация в каком то виде, либо тиринг.

Сцк, я аж еще одно пиво открыл. Жги ищо!

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

У тебя 75 кадров в секунд, а монитор рисует 60 кадров, куда их девать? Либо выкидывать, либо клеить. Наоборот, если кадров меньше чем на мониторе, может VRR помочь, если он активный.

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

Wayland нужно делать тут тоже самое что и остальным: 1) Не мешаться 2) Предоставить Tearing режим с поддержкой вендероспецифичных дополнений, таких как FreeSync/G-Sync.

Где Wayland сейчас может что то предлагать как альтернатива, так это в первом пункте. Но тут тоже не все так просто, NVIDIA переопределяет своими драйверами графическую систему, и как у них Xorg работает, и сколько там копий - непонятно.

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

Я буквально об этом же, пусть и иронично. Этот персонаж просто не может перестать гадить себе в штаны на публике.

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

но игл всё равно будет похоронен

Пожалуй слишком категоричное заявление. Всё же Autodesk не сотрёт Игл с вашего диска и дисков множества его пользователей. По всей видимости просто посчитали что за почти четыре десятка лет этот проект достиг своей завершающей стадии. Всё что считали нужным в нем реализовать - сделали.

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

А ну вот в 6.4 плазме тиринг активен, а VRR выключен по дефолту.

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

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

Не знаю как на маке, а на венде графический стек(WinAPI) уже 30 лет не менялся(сохраняется обратная совместимость) толком. Конечно будет работать.

А насчет обратной совместимости, так и тут XWayland есть.

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

с ускорением он работает все-таки приятнее

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

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

Кидает видео как пруф своим аргументам. Ему кидают то же видео, но чуть подальше. А он его не смотрел.

@

Ему кидают видео в телеге. Он не смотрит, потому что якобы «не открывается».

@

Все вокруг амудефанаты, пивные скуфы (схренали?) и пишут бред, я один у мамы молодец (привет ей, кстати).

Дядь, есть такой нюанс: у всех конкурирующих технологий и вендоров есть свои плюсы и минусы, на то они и конкурирующие. Вполне стоит оценивать оные преимущества и недостатки объективно, а не выпячивать свое мнение как единственное верное. Фанбой (невидеофанат) чего-то одного здесь только один и это ты. Может быть когда-нибудь до тебя это и дойдет, но для этого нужно обладать хоть каплей самоиронии и эмпатии, а без этого ты выглядишь как очередной чудак на первую букву твоего никнейма, такие дела.

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

у меня вообще штеуд-затычка

Тут внезапно выяснилось(подсказали как посмотреть) что у меня на встроенной в проц интеловской «затычке» работает ускорение графики в браузере. Я никак это специально не настраивал,само случилось. Причем еще и Дебиан 11, не самый новый.

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

Это говно убирается на зеленых через vertical sync - fast. Это аналог wp_tearing_control_manager_v1. А вот почему большинство стримеров любят жрать тиринг, хороший вопрос.

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

У демьяна своих патчей вагон, не сильно меньше чем у убунты, вполне возможно что это тот случай. Я на арче уже много лет, тут как сам настроил, так и будет.

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

Да мне-то ты зачем это объясняешь? У меня с этим проблем вообще нет :)

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

Встройки Intel обычно как раз таки хорошо работают под Linux. А в браузере ничего настраивать и не надо, ему нужно общее ускорение системное, плюс браузеры содержат black-list для GPU где много багов, если GPU там нету, и ускорение в системе есть - есть и в браузере.

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

Все же wp_tearing_control_manager_v1 относится к реализации Wayland, а Vertical sync - Fast про работу приложения, и я не думаю что это связанно с NVIDIA, это все похоже на описание типичных режимов обновления кадра, которые стандартиизированы в Vulkan: https://registry.khronos.org/vulkan/specs/latest/man/html/VkPresentModeKHR.html А следовательно должны поддерживаться любыми заинтересованными вендорами. G-Synс, Reflex, FreeSync это именно связка ПО + Железа. А не реализация PresentMode.

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

Встройки Intel обычно как раз таки хорошо работают под Linux.

Ну вот как оказалось - да,в смысле именно рисования графики. А мне больше бы пригодилась поддержка OpenCL - вычисления на GPU. Чтобы можно было отлаживаться на этом компе,а потом уже отлаженное отправлять считать на другой (и не обязательно локальный). Но таки оказалось что поддержка OpenCL на этой видеокарточке не работает. То есть она в Дебиане есть(называется beignet), ставится,карточку видит,но не работает. А жаль - была у меня идея что полезного можно попробовать посчитать с ее помощью. Хотя конечно вовсе не факт что у меня получилось бы это написать.

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

Нет, не ограничивает, скорее всего это ныне стандартизированный VK_PRESENT_MODE_FIFO_LATEST_READY_EXT. Он тоже рисует кадры впустую пока монитор спит, а когда монитор просыпается, засылает в монитор последний полностью нарисованный кадр. У AMD это называется Enhanced Sync. Описание идентично, возможны отличия в реализации, но основная идея одинаковая.

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

OpenCL может и на процессоре работать, без всяких GPU. Так что если цель именно отладить и отправить считать на настояющую GPU, то никаких преград нету.

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

VK_PRESENT_MODE_FIFO_LATEST_READY_EXT.

На kwin даже opengl приложение 2008 года не тирит. Видимо сам композитор контролирует буферизацию.

У wayland композиторов ещё динамическая буферизация есть:

https://9to5linux.com/gnome-48-rc-adds-dynamic-triple-buffering-wayland-color-management-protocol

https://www.phoronix.com/news/KDE-KWin-Triple-Buffering-MR

Средний буфер отключается, если частота кадров ниже половины мониторного.

steemandlinux ★★★★★
()
Последнее исправление: steemandlinux (всего исправлений: 2)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)