LINUX.ORG.RU

Сравнение сеансов GNOME на основе Wayland и X11

 , ,


1

5

Портал Phoronix провёл серию сравнений сеансов GNOME на базе Wayland и X11. Для тестов использовались дистрибутивы Fedora 27 и Ubuntu 17.10. Существенной разницы в производительности игр, энергопотреблении и объёме занятой оперативной памяти обнаружено не было.

GNOME 3.26: Wayland vs. X.Org Performance

Wayland vs. X.Org Gaming Tests

Intel Graphics Performance

anonymous

Проверено: Aceler ()
Последнее исправление: cetjs2 (всего исправлений: 4)

Жесть, сколько хейтеров вэйленда читать(или думать) не умеет.

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

У иксов внутрях довольно чёткое разделение на фронт-энд и бэк-энд. Поэтому «иксы поверх вейланда» принципиально не отличаются от «иксы поверх любого другого драйвера». Было бы странно, если бы в такой конфигурации оно еще и тормозило. Это если бы только совсем уж кривой код.

Не представляю, в чем тут повод для радости вялендофанов. Разве что реально все эти люди рассчитывают на «игоры».

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

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

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

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

Мне это объяснять не надо, я ожидал, что xwayland даже помедленнее xorg будет. Объясняйте тем, кто тут недоволен, что иксы через хвяленый не ускорились

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

не конкретная реализация

Не уловил ход мысли. Реализация чего?

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

При интенсивном OGL-рендеринге победит тот, у кого лучше оптимизированы драйвера. Подозреваю, что в большинстве случаев это была бы винда, если бы её включили в тест.

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

А стоит ли эта просадка того, чтобы переписывать весь графический стек — вопрос без чёткого ответа.

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

Не уловил ход мысли. Реализация чего?

Ну, если мы обсуждаем производительность иксов, и сравнивается два икссервера, то, наверное, реализация протокола икс11 в xorg.

А стоит ли эта просадка того, чтобы переписывать весь графический стек — вопрос без чёткого ответа.

Переписывать старый софт всегда стоит. Особенно, если хоть какая-то посадка есть

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

альтернативная реализация X11 в виде xwayland работает хорошо, но не быстрее xorg

Xwayland - часть иксов. Какая нафиг альтернативная реализация?

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

лично тебя.

Я бы был бы рад, если бы дефицит стороннего ПО касался бы только меня также, как несколько мониторов, касаются только вас. Но увы, это не так. Кому-то фотошопа не хватает, кому-то ворда, кому-то игорь, кому-то узкоспециализированного ПО, кому-то оформления не хватает, кто-то и без The Bat чувствует себя не в своей тарелке и так далее.

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

Ну, если мы обсуждаем производительность иксов, и сравнивается два икссервера, то, наверное, реализация протокола икс11 в xorg.

Мы производительность только конкретного стека можем оценить, а не «X11» отдельно.

Конкретно в случае приложений мы имеем картину:

Приложение -> фронтэнд тулкита -> бэкэнд тулкита -> xlib -> IPC ядра -> фронтэнд X.org -> бэкэнд X.org -> аппаратные драйвера.

Вангую, что на 2D рендеринге через расширение XRender основная просадка будет в синхронном коде xlib, который принципиально не заточен пайплайнить запросы асинхронно. Сами иксы хоть запереписывайся в такой ситуации. Переписывать нужно тулкит, чтобы он не использовал xlib.

Еще в эту цепочку надо вставить обращения туда-обратно к композитному менеджеру через аналогичные звенья, если он используется.

Если использовать OGL, там цепочка короче, и участие xlib сведено к нулю, фактически она выкинута на мороз. Равно как и фронтэнд иксов. Композитор же либо отключается полностью для полноэкранных окон, либо, как в KDE, отключается по запросу приложения. Т.е. фактически имеем:

Приложение -> OGL-стек -> аппаратные драйвера.

Принципиальной разницы между иксами и неиксами быть не должно. Если она есть, надо разбираться.

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

сравнивается два икссервера

Не понял, каких два «икссервера». Там всё тот же X.org со своей огромной кодебазой, из которого вытащили часть задач бэкэнда в вейланд.

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

Для подтверждения полной правоты вяленофилов не хватает тестов нативного вяленого против иксов, если вяленый победит, значит проблема есть.
GNOME 3.26: Wayland vs. X.Org Performance

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

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

Вы правы, переписали только бэкенд. Ещё есть шанс, что спасти xorg можно было переписав вообще всё.

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

Никак. И незачем. Этими извращениями пользуется 1%, если не
меньше. Половина из которого вполне себе обходится VNC.

Стоп. А разве ВНЦ экран не формирует на стороне сервака ?

P.S. Попытаюсь попроще объяснить. Зачем то придумали http серваки и у клиентов браузеры, а не какие то ввв-плаеры.

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

ssh -X

Хм. А это точно в случае вайланда работает ?

---

-X Enables X11 forwarding. This can also be specified on a per-host basis in a configuration file.

X11 forwarding should be enabled with caution. Users with the ability to bypass file permissions on the remote host (for the user’s X authorization database) can access the local X11 display through the forwarded connection. An attacker may then be able to perform activities such as keystroke monitoring.

For this reason, X11 forwarding is subjected to X11 SECURITY extension restrictions by default. Please refer to the ssh -Y option and the ForwardX11Trusted directive in ssh_config(5) for more information.

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

Вангую, что на 2D рендеринге через расширение XRender основная просадка будет в синхронном коде xlib, который принципиально не заточен пайплайнить запросы асинхронно.

Ванговать тут не стоит. Конкретно для команд рисования Rendering Extension вопрос асинхронности вообще не важен, так как эти команды не требуют ответа от сервера, раундтрипы не возникают. Поток запросов с X-клиента льется на X-сервер, и все.

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

Ты не поверишь: тестировали разные сессии гнома. В вяленой сессии тестировался xwayland. Не вейланд, даже не прослойка к нему.

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

Хых, не помню уже этих деталей. Спасибо.

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

памяти сейчас на любом компе по 32 гига, а на ноутбуках по 16.

Это у нищуков, у нормальных пацанов в твоём классе давно 128/64.

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

весь гном на гтк3 и нативном вяленом, разве нет? или ты ждёшь, что кто-то будет переписывать игори на вяленом чтобы ты мог протестировать?

игори на весь экран, как тут уже раскрыли тайну, работают так: app -> ogl -> gpu, поэтому и результаты схожи и так будет всегда. то, что что-то возможно запускается через хвейленд - это проблемы вяленого, но даже если пионеры это поправят, то результат не изменится потому что в цепочке для игорь нет, и не должно быть, ни вяленого, ни иксов.

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

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

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

Если понадобиться в иксах багу поправить или фичу запилить после того как последние деды умрут - кто будет тогда разбираться в куче write only макаронов - ты?

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

игори на весь экран, как тут уже раскрыли тайну, работают так: app -> ogl -> gpu, поэтому и результаты схожи и так будет всегда. то, что что-то возможно запускается через хвейленд - это проблемы вяленого, но даже если пионеры это поправят, то результат не изменится потому что в цепочке для игорь нет, и не должно быть, ни вяленого, ни иксов.

Нет, так не всегда будет. У Wayland уже в GTK 4 гномеры реализовали двойную цепочку для игр, которая возможно даст прирост:

  • APP -> OGL -> GPU
  • APP -> Vulkan -> GPU

Как только останется в поставке дистрибутива последняя цепочка, игры будут не хуже, чем на Microsoft DirectX.

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

возможно даст прирост

мы все ждём статью на форониксе.

anonymous
()

Миша Похороникс опять дуба дал? Нафига игори запускать в XWayland? SDL2 же поддерживает вяленого.

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

Alt-Tab у тебя работает лишь на том основании, что он теперь вшит в графическую систему.

А хоткеи для управления медиаплеером, назначаемые пользователем, тоже теперь вшиты в систему?

Aceler ★★★★★
()

не понятна суть срача

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

пример - гном. На иксах все дерганное, анимация проседает до ~15 кадров\с, скролл тормозной. На вяленом анимация стабильно 60 кадров\с, все плавно, если не считать рандомных дерганий и одного угребищного бага который все портит: https://bugzilla.gnome.org/show_bug.cgi?id=745032

так как кроме гнома больше нечего сравнивать, разговоры в стиле «это просто гном кривой такой» бессмысленны. Ждем пока всеми обожаемое говно маммонта xfce перейдет на гтк3 и вяленого.

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

Да, регулярно этим пользуюсь.

Извините еще раз уточню, это точно чистый вайланд без всяких хвайланд ?

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

так как там тиринга нет, который у меня обычно есть в иксах

Скорее всего виноваты не иксы и вяленый, а конкретно ДЕ. Есть несколько стим игр, которые лагают под всякими там крутыми де, и нормально работают на иксах или опенбоксе... (драйвер nvidia)

П.С.: тиринга не видел никогда, даже на таком куске дерьма как 9300M. И даже на AGP ATI Rage 128 Pro 16Mb /VGA /TV-Out :)))

Сейчас юзаю 440, 630M, 730.

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

Мерить надо производительность GTK

Лол, дожились, отрисовка окошек требует производительности :) Да еще при нулячих визуальных эффектах. Может пора переписать этот глюкодром а не мерить его?

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

Отлично, осталось портировать туда notion.

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

Ага, ближе к 2047... Много ты видел экономного современного софта?

LinuxDebian ★★★★
()
Ответ на: комментарий от i-rinat

Ноешь ты, а выдумывать должен я? Ну отлично.

Зачем вообще что-то выдумывать? Слизали бы у винды UAC и все было бы нормально.

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

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

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

Мне одному кажется, что

Проблема — когда тулкиту/приложению зачем-то нужно обращаться ко всяким API, помнить информацию о мониторах и вообще делать работу композитора, чтобы всё корректно отрисовывать.

и

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

— это какая-то подмена понятий? Так все-таки, «проблема» или «нельзя»?

Опять же, между

Вот API xrandr-а, вот события об изменении координат окна. Бери и реализуй любым способом,

и

тулкит сам перерисует, когда ему композитор сообщит о смене DPI

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

Почитай мои комментарии выше.

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

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

Насколько помню, вяленого начинали пилить как попытку навести порядок в огромной свалки дерьма, в которую превратились иксы.

Другими словами, парочка неосиляторов X.org решила написать свой кусок говна, затем подкатили они к начальству из RedHat, а RedHat тут же смекнул: этим же десктоп на линуксе убить можно! И пошло-поехало.

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

glxgears под wayland у меня всегда показывают 60 FPS ровно. Так себе бенч, да?

vblank_mode=0 glxgears

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

>> когда двойная буферизация была накладной?

> Во времена i386 и win 3.1, например.

Когда-то читал, что игра Supaplex была хитро спрограммирована, чтобы не было тиринга.

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

Как что? Тут же в каждом треде стоит нытьё, дескать, переможем фрагментацию, сразу и фотошоп будет, и игори, и всё, что пожелаешь.

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

Извините еще раз уточню, это точно чистый вайланд без всяких хвайланд ?

Нет, конечно. Я запускаю иксовые приложения на удалённой машине, как я буду делать это без XWayland?

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

Не понятно, с чем ты спросишь, если конечно споришь.

Решил уточнить, что значит «зашит в систему». В моём понимании это захардкожен и плохо. Но хоткеи не могут быть захарткожены. Значит, это не плохо.

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

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

«Зашит в систему» значит, что политика управления хоткеями зашита. Не конкретные хоткеи, разумеется.

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

Чтобы привязать приложения к очередной нестандартной технологии — два.

А что значит нестандартная технология? И почему она не может стать стандартной?

p.s. Считаю, что systemd раздутое и ненужное говно.

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

Нет, конечно.

Понятно, спасибо. Видать что c разделяемой памятью не получается через сетку работать ( не та скорость ) и поэтому решили не мучатся а выкинуть все лишнее из Х и если что, гонять обычными экранами ;)

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

если что, гонять обычными экранами ;)

Если что, то поскольку Wayland приложение в любом случае готовит картинку для помещения в буфер, можно эту картинку гонять по сети вообще по любому протоколу. Не удивлюсь, если Red Hat уже работает, например, над интеграцией SPICE.

Другое дело, что а) реализацию я пока видел только в гноме для VNC и только для всего рабочего стола, б) пока это нафиг не нужно, поскольку 100% приложений умеющих Wayland, умеют и X11.

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

(зевает) знамо, знамо... WM_PAINT, InvalidateRect и всё такое.

При чем тут винда? Двойная буферизация была известна задолго до появления виндовс.

Тока мне казалось, мы тут о другом. Да и двойная буферизация в «очень давние» времена считалась делом слишком накладным.

Не таким уж и накладным - вполне себе использовалась даже на ZX-Spectrum 128K. И вовсе не из-за дополнительной памяти, а из-за возможности быстрого переключения страниц, без лишнего копирования.

andreyu ★★★★★
()
Ответ на: комментарий от i-rinat

На уровне протокола от тиринга избавляться не нужно. Это делается на уровне драйвера. X-сервер - это прослойка между железом и X-клиентом. Протокол тут вообще не к месту.

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

Существенной разницы в производительности игр, энергопотреблении и объёме занятой оперативной памяти обнаружено не было

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

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