LINUX.ORG.RU

Wayland — разъяснения от разработчиков KWin

 , ,


0

3

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

Итак, приступим.

  1. В Wayland может быть реализована сетевая прозрачность.

    Это дело конкретного композитора. Всё дело в ошибочном понимании фразы «в Wayland нет сетевой прозрачности». Правильное понимание этой фразы таково: «спецификация Wayland не занимается сетевой прозрачностью и не определяет её». Композиторы могут быть выполнять локальную отрисовку, могут быть сервером и передавать картинку по сети (хоть на много машин одновременно), а могут делать и то и другое. Те, кто думают, что в Wayland сетевой прозрачности быть не может вообще, ошибаются.

  2. Сетевая прозрачность X11 не подходит для современных приложений.

    Она давно устарела, будучи сделанной с расчётом на то, что приложения используют простые команды для отображения содержимого окна, и эти команды можно отправлять по сети. Когда-то это было разумно, но современные приложения не используют X11 для рендеринга, они используют такие технологии как Cairo, Clutter, QPainter (Raster) или OpenGL. В этом случае X11 вынужден отправлять по сети готовую картинку, а для этой ситуации есть технологии, которые делают это гораздо лучше, чем X11. Сетевая прозрачность в X11 померла и так, без участия Wayland.

  3. X11-приложения будут поддерживаться.

    Никто не хочет ломать систему, переход на Wayland будет произведён если и только тогда, когда X11-only приложения будут в ней хорошо работать (через слой совместимости). Сетевую прозрачность X11, очевидно, тоже можно будет использовать.

  4. Сетевой прозрачности не место в оконной системе. Если вы хотите быстрой сетевой прозрачности, ей место в тулките виджетов.

    Оконная система должна просто заниматься отображением картинки, которую ей дали. Она не знает ничего про виджеты, у неё есть только картинка, которую гнать по сети достаточно накладно. Сетевой прозрачности когда-то было место в X11 только потому, что X11 был не только оконной системой, но ещё и тулкитом виджетов.

  5. «Дистибутивы выкинут иксы, моё любимое X11-only приложение не заведётся!»

    Для этого уже есть слои совместимости (X11 приложения можно запускать из композитора Wayland). Поддержку X11 никто не выкинет из дистрибутивов, пока она будет востребована, даже Mac OS X всё ещё поддерживает X11 для совместимости. Постепенно количество X11-only приложений будет уменьшаться (переписывание, естественная смерть), и даже если из вашего дистрибутива поддержку X11 уберут, вы всегда сможете её собрать сами.

Прекратите повторять ошибочные утверждения.

P.S. Отвечу на вопрос «Зачем вообще нужен Wayland, давайте улучшать X11».

Такие (или аналогичные) изменения даже если были бы возможны в X, всё равно бы сломали X11 и дали несовместимый с ним X12. Без слоя совместимости обойтись невозможно, а сам X12 тоже был бы не сахар, так как писался бы с оглядкой на X11. И чем это было бы лучше того, что мы имеем с Wayland?

В основе X11 лежат архитектурные решения более чем двадцатилетней давности (см выше). Так делать уже не надо, очень много функциональности иксов перешло в тулкиты, ядро, D-Bus, и другие системы. Замену легче написать с нуля, которая делает только свою прямую работу, а не пытается объять всё.

>>> Подробности

★★★★★

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

Ответ на: комментарий от erfea

> Я тебе выше называл целую тону доводов

Где? Довод про «композитинг» - туфта. Приложению наплевать на то, где у его окон gc. Довод про гоняние пиксмапов туда-сюда для рисования округлых кнопочек - тоже туфта, ибо нефиг проблемы тулкита валить на оконную систему.

Где доводы-то? Что-нибудь типа «вэйланд нужен потому, что в иксах принципиально невозможно (протокол прямо запрещает или там ещё что) передать дополнительный параметр для окна в сторонний модуль.» нужно, а не всякую туфту про рюшечки.

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

> А это не важно. Факт лишь в том, что rdp работает отлично, а x11 тормозит хуже сраного vnc, который лишь гонит картинки. Такая «сетевая прозрачность» мне мне нужна.

Х11 работает почти идеально. Запусти:
ssh -Y сервер xterm
потом запустии в нем, например, mc, посмотри на скорость работы, ага. А потом сравни это с VNC или c FAR-ом по RDP на том же канале. А потом будешь рассказывать сказки.

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

Еще какие-то проблемы у Х-ов есть? ;)

Жрёт дохрена ресурсов. Тормозит. Не умеет нормально выводить видео. Не умеет НОРМАЛЬНО рисовать. Не умеет нормальный композит, приходится реализовывать через анальное отверстие. Имеет средства дублирующие функционал, что приходится учитывать при разработке, писать лишний код. И многое, многое ....

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

> Пошла двенадцатая страница, но не один из протестующих аналитиков почему-то не хочет поспорить непосредственно с Мартином, хотя до формы отправки комментария отделяет один клик.

Думаешь, один такой умный? ;) Он не аппрувит комменты, которые ему не нравятся. За двое суток мой коммент на той странице так и не появился.

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

>Как нарисованное дефолтными примитивами твоего GDI.
Эм. У меня может не быть желания переписывать мой X-сервер. И я не обладать правами рута. А изкоробочный о GDI не хочет ничего знать.
Кстати, дефолтные примитивы моего GDI — просто линии? Мы договорились, что о кнопках разговор ещё не идёт.
Стоп, тут ещё и под-окно создавать либо получать геморрой в эвент-лупе. Впрочем, с под-окном тоже геморрой, но в другом месте. И всё это описать в тулките, код которого занимает память. Ну ничего, она сейчас дешёвая.

И наплевать. Но если я говорю приложению - работать, сцуко, в локали «C» - то оно обязано засунуть свой юникод себе в какое-нибудь самое дальнее место и работать в локали «С». И только если я попрошу его работать в локали типа «ru_RU.UTF8» вот только тогда приложение может использовать юникод, если умеет.

Умение юникода бывает разное. Приложение не представляет, с какой локалью запущен X-сервер (и не имеет возможности узнать: в X-cервере в общем случае нет расширения СкажиМнеСвоюЛокаль). X-сервер не представляет, с какой локалью запущено приложение. Об уровне поддержки юникода они не представляют тем более.

Следовательно, если X сервер у меня не умеет юникод, то я просто запускаю приложение в неюникодной локали.

Даже если это японокитайский словарь. Я тоже так делаю, ну а чо?

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

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

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

> Ну не знаю. Для меня иксы - «такая штучка, отвечающая за графику, поверх которой пускается wm». Что для меня может изменить wayland ?

Рассказываю.

Первой жертвой падут оконные менеджеры. В wayland-е нет такого понятия как оконный менеджер или декоратор. Там каждая программа сама рисует себе оформление. Про темы окон тоже можно будет забыть - у каждой программы будет свой внешний вид, добро пожаловать в windows 95.

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

Также всем программам потребуется больше CPU ресурсов, потому что каждый раз нужно передавать изображение всего окна целиком - это основа протокола wayland. Даже если на огромном экране изменился 1 пиксель - передать надо все окно целиком, потому что в протоколе by-desing нет частичного обновления - зачем все усложнять?

А еще всем программам потребуется в 2-3 раза больше памяти для отрисовки, потому что протокол использует двойную (а местами тройную) буферизацию передаваемого изображения.

Также с приходом вейланда можно будет наконец-то выкинуть свои топовые видеокарты, потому что его протокол технически не позволяет работать ни с видеопамятью, ни с аппаратным ускроением. В теории можно использовать GL-команды в обход вейланда, а потом вручную копировать из видеокарты сформированное изображение. На практике это будет означать двойную потерю производительности (кадр нужно будет вытащить из видеопамять в юзерспейс, а потом запхнуть его обратно, но уже через wayland).

Аппаратного ускорение в видеоплеерах тоже не будет - в протоколе это не предусмотрено. И, в отличие от Х11, протокол wayland почти не расширяемый.

Это если не считать таких мелочей, как принципиальное отсутствие управления раскладками (этого в вейланде просто нет, он даже сейчас использует для этого Х-овые библиотеки), прибитые гвоздями прямо в коде курсоры мыши, конечно же о многомониторности с приходом wayland-а тоже можно забыть.

Почему? Потому что у него простой протокол, который ничего этого не умеет. Вы хотели простой протокол - получите.

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

Где? Довод про «композитинг» - туфта.

Ога, только композит средствами иксов пашет мягко говоря хреново.

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

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

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

Если что-то принципиально возможно, но через анал, лучше считать это невозможным.

нужно, а не всякую туфту про рюшечки.

В частности рюшечки (и мне в том числе) очень даже нужны, не нравится не пользуйся. А я сидеть с графикой 80-х годов не желаю, не для того у меня стоит мощный процессор и видеокарта.

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

>Бгы. Речь про XReparentWindow()? Класс! И как же в wayland решили «эту проблему», если там такой функции НЕТ? Ни ее ни какого-то другого аналога.
Именно так и решили. Нет функции — нет проблемы. А репарентинг просто для того, чтобы сделать декорации (как в иксах), в wayland не нужен.

Ок, проблема решена, просто считай, что этой функции нет.

Тогда нужно разделить программы для «старых» иксов и для «новых» + придумать, как рисовать декорации.

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

>Но ведь если мы возьмём не один байт, а 4 байта на строку под длину (которые на i686 адресуются быстрее, чем 1 байт), то мы можем с такой же скоростью обрабатывать строки длинной в 4294967296 символов.

Сможем записать в память одну такую строчку в 64 битной оси, но не сможем поместить в память массив из 1000 таких строк с постоянной длиной. А с короткими строками мы имеем непрерывный кусок памяти <=256 байт который не размазан по всему стеку и достаточно экономично используется для коротких записей и операций сложения строк. А теперь самое прикольное: на дворе параллельные потоки и многоядерность. Каково передавать туда-сюда 4 гиговые строки другим потокам на других ядрах? Строки с переменной длиной, по факту, более медленные чем короткие с постоянной. Можно увеличить длину коротких строк в несколько раз, но принцип останется прежним.

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

> А если тебе нужен VNC, то ипользуй VNC. Разве тебе X11 мешает это сделать? Или тот же RDP можешь использовать. Для этого тебе надо выкидывать иксы?

Там все еще хуже. В wayland-е нельзя использовать ни RDP ни VNC. В основном протоколе нет возможности не то что следить за изменениями - нет даже возможности запросить картинку с экрана. Чтобы хоть как-то делать скриншоты в вейланде параллельно к основному протоколу добавили специальный костыль - еще один протокол с единственным сообщением «запросить скриншот экрана».

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

>С приходом вейланда все программы начнут работать медленее, потому что потребуют дополнительные ресурсы для передачи изображения от клиента серверу. В Х-ах передается не изображение, а команды отрисовки, в wayland-е всегда передается изображение.
Эм. В wayland происходит одна отрисовка и одно сообщение по протоколу. В иксах происходит тонна сообщений по протоколу и одна отрисовка. Так где будет медленнее?

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

Ты совершенно не понимаешь суть wayland. Клиент и сервер шарят буфер.

В wayland-е нет такого понятия как оконный менеджер или декоратор.

Композитор и есть оконный менеджер. А декоратора действительно нет.

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

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

Ха! Попробуй-ка поиграть в quake по RDP? А по X11 - играет, скотино!

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

>не сможем поместить в память массив из 1000 таких строк с постоянной длиной.
Во-первых, зачем постоянная длина?
Во-вторых, man указатели. А, да, делфи^Wpascal cannot into указатели.

Каково передавать туда-сюда 4 гиговые строки другим потокам на других ядрах?

Смотри выше.

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

> Жрёт дохрена ресурсов.

Минуточку. Это же вэйланд нельзя запустить на i386 c S3Trio. А X-ы можно. Как тогда получается, что вэйланд жрёт меньше ресурсов?

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

Тормозит

Опять спрошу про i386 и S3Trio.

Не умеет нормально выводить видео

«Нормально» - это как? XV, GL, X11 shm - всё работает. Или речь про аппаратные декодеры всяких H264 или как там его? Так это вопрос к дятлам производящим железо, которые сидят на своих спеках как будто хотят высидеть что-то кроме геморроя и лучей поноса от пользователей.

Не умеет НОРМАЛЬНО рисовать

Вообще-то, GDI Win32 - один-в-один соответствует иксовому GC. Названия функций даже не сильно отличаются. И рисуют, что Win32 GDI, что иксовый GC - абсолютно одинаково.

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

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

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

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

о многомониторности с приходом wayland-а тоже можно забыть.

...



осиль уже посмотреть стандартные примеры

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

Толку от Gallium3D всё равно пока на копейку, ну может на три. Если его допилят, то нормальные игровые 3Д движки не посыпятся как из рога изобилия. Ну, может, запилят по традиции очередного монстра который будет компилиться 3 часа и только в убунте, для которой и так будет доступен в виде пакетов.

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

>Ну вот, динозавры на ЛОРе, ЧиТД.

Ага, разговаривают с обезьянами, которые тоже скоро вымрут и сохранятся только в зоопарках.

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

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

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

Суровые пользователи X11 играют в кваку только через удалённый Xorg-сервер.

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

>Знаешь хоть одну возможность Х-ов, которая никем не используется?

the entire core rendering API that lets you draw stippled lines, polygons, wide arcs and many more state-of-the-1980s style graphics primitives.

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

> Ога, только композит средствами иксов пашет мягко говоря хреново.

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

Тулкиту необходима та оконная система, которая сможет адекватно переваривать его функционал

Откуда и зачем самому тулкиту нужно знать вообще о существовании оконной системы как таковой???? Его дело виджеты примитивами рисовать и ВСЁ.

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

Хочу иметь возможность работая удалённо заставить приложение на qt4 или gtk3 использовать иксовые примитивы для рисования виджетов, а не получать от него тонну пиксмапов с округлыми кнопочками и оталиасенными шрифтами. При удалённой работе меня более чем устроят и квадратные кнопки с убогим шрифтом, лишь бы сама софтина работала. Как мне это сделать?

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

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

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

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

Минуточку. Это же вэйланд нельзя запустить на i386 c S3Trio. А X-ы можно. Как тогда получается, что вэйланд жрёт меньше ресурсов?

Я так и не понял, что мешает запустить вяленого на этом железе!

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

Qt до сих пор умеет рисовать средствами иксов, так тормозит однако даже на моем далеко не слабом компе. Как работает современное ПО с иксами на маке G4 даже рассказывать страшно, это касается обоих режимов работы тулкита и иксовыми средствами и через свой буфер и даже через огл. Что уж там говорить про помойку предложенную тобой.

Опять спрошу про i386 и S3Trio.

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

«Нормально» - это как? XV, GL, X11 shm - всё работает. Или речь про аппаратные декодеры всяких H264 или как там его? Так это вопрос к дятлам производящим железо, которые сидят на своих спеках как будто хотят высидеть что-то кроме геморроя и лучей поноса от пользователей.

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

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

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

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

Сделай тему для qt4 и движок+тему для gtk2 (gtk3 уже не вылечить, хотя, может, у тебя это удастся) и применяй их при удалённой работе.

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

>Во-первых, зачем постоянная длина?

Для скорости, разберись как это работает.

Во-вторых, man указатели. А, да, делфи^Wpascal cannot into указатели.

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

Смотри выше.

Опять же разберись, как всё работает. При копировании длинной строки просто так лопатой не отмахаешься, не надейся.

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

>Сам Кармак недоволен OpenGL, стандарт несколько отстает от реальности.

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

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

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

Не нужно юзай ncurses я уже тебе говорил.

Откуда и зачем самому тулкиту нужно знать вообще о существовании оконной системы как таковой???? Его дело виджеты примитивами рисовать и ВСЁ.

Я уже говорил, что метод «виджеты примитивами рисовать и ВСЁ» крайне либо тормозной, либо убогий по результату.

Хочу иметь возможность работая удалённо заставить приложение на qt4 или gtk3 использовать иксовые примитивы для рисования виджетов, а не получать от него тонну пиксмапов с округлыми кнопочками и оталиасенными шрифтами. При удалённой работе меня более чем устроят и квадратные кнопки с убогим шрифтом, лишь бы сама софтина работала. Как мне это сделать

Сопровождай СВОЙ бекенд для гтк и пользуй, остальные хотят нормальную графику причём локально, кому нужно работать с графикой удалённо использую требующееся для сабжа ПО. Сетевую прозрачность иксов сегодня юзают только гики вроде тебя, если мне нужно удалённо подключиться к вендовому серваку (имелась нужда по работе) я юзал rdp, если к линуксячей машине vnc, всё отлично работало и выполняло свою задачу.

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

>> Еще какие-то проблемы у Х-ов есть? ;)

Жрёт дохрена ресурсов. Тормозит.

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

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

Блин, wayland давно есть во всех топовых дистрибутивах. Запустите уже его наконец и посмотрите, какое там все «быстрое». Хватит тут фантазировать. Я б давно уже сам провел сравнение glxgears vs wayland gears, если бы у меня была хоть одна видеокарта, на которой он запускается...

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

> Qt до сих пор умеет рисовать средствами иксов

Что именно рисовать? Оно может для отрисовки кнопки использовать _только_ XFillRect и XDrawString ? Без всех этих пластиков и прочего? А вот нихрена не умеет. Если бы умело включать такой режим - то лучшего тулкита не найти было бы. И по сети просто летало бы.

Вывод нормальный только через огл.

Все претензии - к писателям драйвера видюхи. Иксы тут совершенно не при чём.

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

Угу. Есть вещь, сделанная через анал. Теперь надо сделать вэйланд для более комфортного деланья через анал и объявить это вот сделанное через анал нормальным.

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

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

>Кстати, а рэдхатовский SPICE с какого боку от вяленого и иксов стоит?

да по сути ни с какого. Он заточен под работу в виртуалках со связью через virtio.

А так, мог бы быть заменой vnc, то есть, поверх иксов или вейленда.

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

> Я б давно уже сам провел сравнение glxgears vs wayland gears
Перед тем как говорить о тормозах — измеряйте или подключайте теорию.
Иначе так можно сказать всё что, угодно, про всё, что ещё не допилили.

quantum-troll ★★★★★
()
Ответ на: комментарий от Stanson

Что именно рисовать? Оно может для отрисовки кнопки использовать _только_ XFillRect и XDrawString ? Без всех этих пластиков и прочего? А вот нихрена не умеет. Если бы умело включать такой режим - то лучшего тулкита не найти было бы. И по сети просто летало бы.

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

Все претензии - к писателям драйвера видюхи. Иксы тут совершенно не при чём.

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

Угу. Есть вещь, сделанная через анал. Теперь надо сделать вэйланд для более комфортного деланья через анал и объявить это вот сделанное через анал нормальным

Почему принципиально более шустрый способ рисовать графику есть «чере анал»?!

Что-то всякая социальщина и политика пробираются уже и в программизм.

Интересно я «социальщина» или «политика», программист ты наш?

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

> Я уже говорил, что метод «виджеты примитивами рисовать и ВСЁ» крайне либо тормозной, либо убогий по результату.

Так Win32 GDI теперь тормозной или убогий?

остальные хотят нормальную графику причём локально

Я тоже пользую рюшечки и перделки со свистелками _локально_. Вон, и окошки темнеют, и кнопочки округлые, и кубик вращается. Но хочу иметь возможность использовать тот же самый софт в режиме без рюшечек _удалённо_.

Ну или полное покрытие всего земного шара 100Мбитной беспроводной связью с пингом не более 50 мс.

По-моему, первое желание не такое уж и маразматичное.

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

> Эм. В wayland происходит одна отрисовка и одно сообщение по протоколу. В иксах происходит тонна сообщений по протоколу и одна отрисовка. Так где будет медленнее?

Не совсем так. В wayland происходит одна отрисовка на клиенте в память, затем еще одна отрисовка из памяти на сервере в память на видеокарте. Вся картинка каждый раз целиком гонится от клиента серверу, а потом из сервера на видеокарту. ВСЯ!

В Х-ах вообще не выполняется отрисовка, ни на клиенте ни на сервере - она выполняется на видеокарте, а от клиента серверу передается минимально необходимый для этого набор команд. Х-ы для этого предоставляют море возможностей, вплоть до кеширования в видеопамяти отдельных пиксмапов. В результате для отрисовки экрана размером 1920x1080 с десятком окон передается не 10 мегабайт картинок, а несколько коротких команд, которые обновляют только пару изменившихся пиксмапов.

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

>> Знаешь хоть одну возможность Х-ов, которая никем не используется?

the entire core rendering API that lets you draw stippled lines, polygons, wide arcs and many more state-of-the-1980s style graphics primitives.

Мимо. Ты только что выкинул все существующие тулкиты и оконные менеджеры на помойку. Емнип, из всех существующих программ ими не пользуется только компиз. Зато все WM-ы (icewm, fwvm, dwm, ...) и даже все тулкиты (*Tk, Motiff, GTK, Qt, да-да, даже Qt) используют эти функции там, где их использование целесообразно.

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

Так Win32 GDI теперь тормозной или убогий?

Мы, кажется, не про венду говрим.

Я тоже пользую рюшечки и перделки со свистелками _локально_. Вон, и окошки темнеют, и кнопочки округлые, и кубик вращается. Но хочу иметь возможность использовать тот же самый софт в режиме без рюшечек _удалённо_.

Тебе разрабы вяленого запрещают реализовать то чего ты желаешь?!

Ну или полное покрытие всего земного шара 100Мбитной беспроводной связью с пингом не более 50 мс.

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

По-моему, первое желание не такое уж и маразматичное.

Как минимум специфичное, ты действительно считаешь что ВСЕМ нужна реактивная сетевая прозрачность?!

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

> Ну и зачем тут вэйланд? Достаточно модуля иксов, который реализует расширение для рисования красивых кнопочек.

Это б запросто. Только вот, блин, каждый юзер по своему понимает, что такое «красивые» кнопочки. Попробуй-ка убедить всех девелоперов и юзеров хотя бы Qt и GTK, что именно твой вариант «красивых» кнопочек самый красивый, а у них все неправильно. Сможешь?

Нет? Значит ты должен им дать максимально гибкие инструменты, которые позволят им легко и быстро рисовать любые красивые кнопки, которые им только прийдут в голову. Х-ы дают такие инструменты, wayland - нет.

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

> XМ придумали разрабы иксов, обеспечить его нормальную работу они не осилили, нахрена везде повтыкали я так и не понял, такое уг они постоянно впихивают год за годом.

XV наверно? У меня работает без каких-либо проблем. Причём очень давно - чуть ли не со времён Matrox G400, или как там называлась офигенно крутая видюха в то время...

Даже на убогом ноуте с i845GM у которого TFT по-идиотски прикручен на DVOC через CH7019, из-за чего там ничего новее i810_drv не заводится - и то работает без единого глюка.

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

>В wayland происходит одна отрисовка на клиенте в память, затем еще одна отрисовка из памяти на сервере в память на видеокарте. Вся картинка каждый раз целиком гонится от клиента серверу, а потом из сервера на видеокарту. ВСЯ!

man GEM

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

XV наверно? У меня работает без каких-либо проблем. Причём очень давно - чуть ли не со времён Matrox G400, или как там называлась офигенно крутая видюха в то время...

Даже на убогом ноуте с i845GM у которого TFT по-идиотски прикручен на DVOC через CH7019, из-за чего там ничего новее i810_drv не заводится - и то работает без единого глюка.

Я за тебя рад.

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

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

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

> Тебе разрабы вяленого запрещают реализовать то чего ты желаешь?!

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

Как минимум специфичное, ты действительно считаешь что ВСЕМ нужна реактивная сетевая прозрачность?!

Нет. Я считаю, что ВСЕМ нужен грамотно спроектированная графическая система. Реактивная сетевая прозрачность, одинаковый вид приложений на разных тулкитах и всё такое прочее - лишь результат правильного подхода к делу.

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

> Я за тебя рад.

Это прекрасно, но при чём тут тогда иксы? Видимокарта-то какая? Небось нвидия с проприетарными дровами? Или ati, опять же, с проприетарными дровами?

Stanson ★★★★★
()
Ответ на: комментарий от quantum-troll

>> Я б давно уже сам провел сравнение glxgears vs wayland gears

Перед тем как говорить о тормозах — измеряйте или подключайте теорию.

Иначе так можно сказать всё что, угодно, про всё, что ещё не допилили.

Дык, теория и говорит, что три копирования (из видеопамяти в юзерспейс gears, затем из юзерспейса gears в юзерспейс wayland и затем снова в видеопамять) - это медленнее, чем ноль копирований (glxgears отдает команды, которые Х-ы передают видеокарте и изображение рисуется прямо на карте).

Измерять не получается - негде, не пашет wayland на моих картах. А подходящей intel-карты у меня нет. Вот пусть кто-нибудь наконец проверит.

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

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

Бред собачий, бекенд для вяленого как в гтк так и в кьют прикручен фактически сбоку.

Нет. Я считаю, что ВСЕМ нужен грамотно спроектированная графическая система. Реактивная сетевая прозрачность, одинаковый вид приложений на разных тулкитах и всё такое прочее - лишь результат правильного подхода к делу.

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

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

Это прекрасно, но при чём тут тогда иксы? Видимокарта-то какая? Небось нвидия с проприетарными дровами? Или ati, опять же, с проприетарными дровами?

При том, что их технологии не работают. Да ati, да fglrx, у меня есть альтернатива?!

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

Дык, теория и говорит, что три копирования (из видеопамяти в юзерспейс gears, затем из юзерспейса gears в юзерспейс wayland и затем снова в видеопамять) - это медленнее, чем ноль копирований (glxgears отдает команды, которые Х-ы передают видеокарте и изображение рисуется прямо на карте).

Где ты этот бред взял вообще?!

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