Вы не вошли.


Сегодня Иксы - гигантский тормоз графической подсистемы в Линукс.
Скорее в плане дальнейшей эволюции графической системы нежели в плане натурального быстродействия. Еще Phoronix публиковали результаты тестов графических подсистем Windows 7 и Linux/Xorg. В итоге "гигансткий тормоз" обернулся отставанием в пределах от 15-25%. Что намного логичнее спихнуть на сыроватые дрова. Все уже давным давно рендерится через DRI/DRM и Xorg в этом даже не участвует. Разрабам драйвером мешает не сколько сама архитектура Xorg, сколько дистрозависимые проблемы на багтреке и привычка разрабов Xorg ломать ABI.
Хотя я в общем-то согласен. С графикой нужно что-то делать. Хотя сейчас кажется есть луч надежды в виде Wayland.
P.S. Извините за оффтоп. За Ubuntu рад.
We'll force you to be nice to each other
Kill you before you kill each other
Вне форума


Тут неплохо было бы добавить «ИМХО», потому что вряд ли разработчики иксов хуже вашего разбираются, что делать с видеоподсистемой.
А вот очень спорно, так как мы привыкли иностранное видеть в таком хорошем свете и умалять себя. Не сильно товарищи разработчики отличаются от отечественных разработчиков,да и люди, я считаю в целом, так,что если избавится от штампов, то и там и здесь мы похожи. Поменьше делать, а побольше получать. Вот системы разные-это факт.
Очнувшись в общей больничной палате
На старой и жесткой,скрипучей кровати
Мелькнет в голове бесполезная мысль
Как бестолково,но удивительно...Просрана эта жизнь
Вне форума


Как вам не понять, иксы это универсально. Вот для чего маздай внедряет дотнет если он только замедляет работу?
Статсик, ты бы заткнулся,а? Про твои упражнения с WinSock многие читали, и уже поняли, какой-ты спИциалист, впрочем как и все остальные луноходы здесь, за редким исключением. Так что не смеши людей своими глупыми высказываниями.
Господа, вы охуели. Все. ©Cэмен
Вне форума


Обращение, простите, кого именно к локальной видеоподсистеме?
Ядра операционной системы, чего же ещё? В допотопном UNIX ядро располагалось на сервере и управляло терминалом через сетевой протокол. В линухе ядро расположено там же, где и "терминал", но всё равно управляет "терминалом" через "вырожденный" сетевой протокол. Ты сам здесь написал, что это - правильно:
Это «наследие мейнфреймов» рассматривает локальный десктоп просто как вырожденный случай сетевого, грамотный унифицированный подход.
И еще раз: клиент-серверная архитектура не виновата в тормозах при отсутствии полноценно поддерживающих прямой аппаратный рендеринг драйверов.
Ещё раз для тупых: если доступ к памяти видеоконтроллера идёт через ЦПУ, а не через контроллер ПДП (что абсолютно всегда имеет место в клиент-серверной архитектуре), скорость рендеринга будет всегда ограничена быстродействием ЦПУ, которое на порядки ниже быстродействия потоковых процессоров видеокарты. Именно поэтому иксы в их стандартном варианте дичайше тормозят, а производители видеокарт для ускорения работы видео заменяют компоненты иксов своими собственными, оригинальными и нестандартными, компонентами.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


Соответственно, обращение к локальной видеоподсистеме идёт не через DMA, а через сокеты. Которые в принципе не предназначены для прямого доступа к памяти. Из-за этого все тормоза.
Может я параноик, но разрешать любому приложению писать в DMA произвольны символы не безопасно.
Соответственно, обращение к локальной видеоподсистеме идёт не через DMA, а через сокеты. Которые в принципе не предназначены для прямого доступа к памяти. Из-за этого все тормоза.
Не замечал различий.
Удаленный доступ это не то, на что следует ориентироваться, для этого есть специализированные протоколы - RDP, VNC и т.д.
Вы ничего опять не поняли. У меня на рабочем столе не другой рабочий стол, а только окно терминала (свёрнутое) и окно синаптика в заголовке которого написано на каком компе он запущен.
Пока эта проблема решается переписыванием Иксов производителями оборудования, это ненормальная ситуация.
Для незнающих. Локальные сокеты в линухе я слышал передают данные между апликухами через диспетчер виртуальной памяти (переключение сегментов/страниц).
Добавлено спустя 10 мин 42 с:
Про твои упражнения с WinSock многие читали, и уже поняли, какой-ты спИциалист, впрочем как и все остальные луноходы здесь, за редким исключением. Так что не смеши людей своими глупыми высказываниями.
Поинтересовался на свою голову. Заткнитесь а, давно уже с этой проблемой разобрался.
Может вам интересно, но за несколько лет можно и подзабыть что винсок имеет события . Я к VB уже 2 года не притрагивался.
Не ламерствуй лукаво.
"А петь мне нельзя - постановление суда" (с) Бендер
Вне форума


если доступ к памяти видеоконтроллера идёт через ЦПУ, а не через контроллер ПДП (что абсолютно всегда имеет место в клиент-серверной архитектуре),
А можно с этого места поподробнее? Что такое DMA? Для чего это используется? Каким образом оно связано с GPU? Почему клиент-серверная архитектура позволяет обращение к видеопамяти только посредством CPU?
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума


Что такое DMA
Это такая фишка которая позволяет устройствам напрямую обращаться к RAM не требуя запахать процессор.
Однако локальные сокеты никаким образом к этому не относятся, все подобные манипуляции происходят только на уровне ядра.
Даже в божественной это закрыто толстым слоем API.
Реально с DMA диапазонами работают только драйвера. А драйвер всегда находиться на одном ПК с иксами и управляется ABI.
Просьба не путать тёплое с мягким, и хотя бы иногда читать мелкомягкий хелп.
Не ламерствуй лукаво.
"А петь мне нельзя - постановление суда" (с) Бендер
Вне форума


Почему клиент-серверная архитектура позволяет обращение к видеопамяти только посредством CPU?
Потому что клиент-серверная архитектура работает посредством сетевого протокола, который в силу своих особенностей предназначен не для прямого доступа к GPU, а для прямого (или непрямого) доступа к сетевой карте. Отсюда получается, что на локальной машине данные для GPU прогоняются от "сервера" к "клиенту" через "вырожденный" сетевой протокол, во время чего обрабатываются ЦПУ, после чего уже попадают в GPU.
Реально с DMA диапазонами работают только драйвера.
Да да да да! Именно - только драйвера! А с драйверами в данном случае работает "клиент", видеоданные к которому приходят от "сервера" посредством "вырожденного" сетевого протокола.
Отредактировано MOP3E (03-04-11 20:50:44)
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


на локальной машине данные для GPU прогоняются от "сервера" к "клиенту" через "вырожденный" сетевой протокол,
А про локальные сокеты мёсье ничего не слышал? Печально.
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума


Может вам интересно, но за несколько лет можно и подзабыть что винсок имеет события . Я к VB уже 2 года не притрагивался.
Что ты плетешь, гад! Как можно забыть, что у обьекта есть свойства, методы, события??? Это все равно что забыть как ложку держать, хватит уже чушь пороть, клоун!!!
Господа, вы охуели. Все. ©Cэмен
Вне форума


А про локальные сокеты мёсье ничего не слышал? Печально.
Шо локальные, шо реальные - всё равно обмен через них идёт при непосредственном участии CPU.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


Да да да да! Именно - только драйвера! А с драйверами в данном случае работает "клиент", видеоданные к которому приходят от "сервера" посредством "вырожденного" сетевого протокола.
Прошу не путать локальные сокеты и стек TCP/IP.
Что ты плетешь, гад! Как можно забыть, что у обьекта есть свойства, методы, события??? Это все равно что забыть как ложку держать, хватит уже чушь пороть, клоун!!!
Из головы вылетело... ты вообще ничего не забываешь?
Шо локальные, шо реальные - всё равно обмен через них идёт при непосредственном участии CPU.
Накладные расходы небольшие. Всего то передать страницу памяти от одного приложения в другое. А это насколько я помню изменить содержимое одной ячейке (32 бита) в таблице виртуальной памяти. Скорее всего там есть и сопутствующие действия, но задержки незначительны.
Xclient - soket - Xserver - driver
Не ламерствуй лукаво.
"А петь мне нельзя - постановление суда" (с) Бендер
Вне форума


Накладные расходы небольшие. Всего то передать страницу памяти от одного приложения в другое. А это насколько я помню изменить содержимое одной ячейке (32 бита) в таблице виртуальной памяти.
Сдаётся мне, что дело гораздо сложнее...
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


Сдаётся мне, что дело гораздо сложнее...
Не сложнее WinAPI
Не ламерствуй лукаво.
"А петь мне нельзя - постановление суда" (с) Бендер
Вне форума


Не сложнее WinAPI
Естественно, не сложнее DirectX, а там делается примерно так:
1. Создаётся объект "Трёхмерный мир", в котором моделируется трёхмерная сцена: треугольники, текстуры и т.п.
2. Создаётся объект "Точка просмотра", который определяет, какую именно часть мира видно.
3. Выполняются необходимые преобразования, в результате чего в точке просмотра моделируется часть сцены, котрую из этой точки видно.
4. Подаётся команда копирования данных из буфера точки просмотра в память видеокарты, которая эти данные рендерит (создаёт из описания трёхмерной сцены двумерную проекцию на плоскость экрана).
Так вот, если эти данные тупо отдавать переключением страницы из одного приложения в другое, это будет означать, в частности, потерю буфера точки просмотра. Со всеми вытекающими в виде необходимости создания нового буфера, который придётся заново наполнять данными - на что требуется от нескольких секунд до нескольких минут вычислений. Потому что одна и та же страница памяти не может одновременно принадлежать двум приложениям - это противоречит как логике работы ОС, так и правилам безопасности ОС.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


Потому что одна и та же страница памяти не может одновременно принадлежать двум приложениям - это противоречит как логике работы ОС, так и правилам безопасности ОС.
Правильно, срочно сообщить майкрософту о вредности такой сущности как memory mapped files.
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума


Правильно, срочно сообщить майкрософту о вредности такой сущности как memory mapped files.
И при чём здесь memory mapped files? Особенно при выводе видео на экран.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


И при чём здесь memory mapped files?
А притом, что данный механизм используется как раз для того, чтобы нескольким приложениям дать одновременный доступ к одной и той же странице памяти. Вывод видео на экран здесь конечно не при чём, не для того это сделано, но, тем не менее, о выводе на экран я всё таки советую немного почитать, чтобы не нести здесь явный бред. Документация по архитектуре и расширениям X11 достаточно подробно представлена в сети.
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума


Вывод видео на экран здесь конечно не при чём, не для того это сделано, но, тем не менее, о выводе на экран я всё таки советую немного почитать, чтобы не нести здесь явный бред.
Я достаточно хорошо разбираюсь в этом вопросе. Если ты хочешь что-то доказать - флаг тебе в руки. Пока что ты написал здесь исключительно бред.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


Пока что ты написал здесь исключительно бред.
В каком именно месте?
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума


В каком именно месте?
Все твои "возражения" сводятся к банальным понтам и отсылкам в гугль.
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


и отсылкам в гугль.
То есть тебе прямую ссылку дать? Ну на
dri.freedesktop.org/wiki/Documentation
просвещайся, лапоть.
И ещё
Ещё раз для тупых: если доступ к памяти видеоконтроллера идёт через ЦПУ, а не через контроллер ПДП (что абсолютно всегда имеет место в клиент-серверной архитектуре), скорость рендеринга будет всегда ограничена быстродействием ЦПУ, которое на порядки ниже быстродействия потоковых процессоров видеокарты.
для совсем тупых, во первых при чём здесь собственно говоря DMA как таковой по отношению к клиент-серверной архитектуре? Одно другому не мешает. Во вторых, скорость рендеринга и скорость доступа к памяти это несколько разные вещи, кстати потенциально CPU с пересылкой данных в памяти справится лучше чем GPU через DMA, потенциально потому, что один хрен в обоих случаях лимитирующим фактором будет пропускная способность памяти. Другое дело что если используется DMA процессор в это время может другими делами заняться, хоть и не так эффективно, поскольку память с другим устройством делить придётся. Ну а что касается всяких отрисовок линий и пр, так процессору тут вообще ничего делать не надо, передал координаты начала, конца, толщину и цвет линии на GPU через драйвер и пошёл другими делами заниматься. Ну если только драйвер не vesa, тогда да, придётся адрес каждой точки в видеопамяти через CPU обсчитывать.
Ссылка ничем не лучше отсылки в гугль. Переход на личности. Еще раз и П.
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума


Ну а что касается всяких отрисовок линий и пр, так процессору тут вообще ничего делать не надо, передал координаты начала, конца, толщину и цвет линии на GPU через драйвер и пошёл другими делами заниматься.
Ага, ага, дилетанта видно за версту - GPU без участия CPU будет ему сцену трансформировать.
Щаз, разбежался! GPU этого делать не умеет. У Майкрософт в DirectX SDK аж целая библиотека типов и функций для матрично-векторных преобразований треугольников. И с каждой новой версией SDK количество функций всё увеличивается и увеличивается.
Ламер, CPU каждый цикл игрового времени просчитывает новую трёхмерную сцену: изменяет "координаты начала, конца, толщину и цвет линии" как ты здесь неуклюже выразился. Хотя на самом деле вся отрисовка идёт посредством натягивания текстур на треугольники, имя которым - полигоны. И именно поэтому нужно чтобы драйвер забирал сцену из памяти самостоятельно - чтобы CPU в это время мог рассчитать следующую сцену, следующий кадр.
Возвращаемся к линуху, где CPU вынужден самостоятельно запихивать сцену в память видеокарты (клиент-серверная архитектура, однако!). Загруженный другой работой, центральный процессор уже не успевает просчитывать следующий кадр трёхмерной сцены. Отсюда и отставание "классических" иксов в плане 3D-графики, и всевозможные ухищрения в проприетарных драйверах чтобы при отрисовке 3D вообще не использовать стандарт Х11. Потому что "правильный" Х11 в плане графики - медленная черепаха. Он так спроектирован в 80-е годы, когда никакого видеоускорения ни у кого даже в самых смелых мечтах не было.
Отредактировано MOP3E (05-04-11 01:23:28)
Я не игрушечный. Я, б*я, коллекционный! (с) Duke Nukem Forever
Я не специалист по [вставить название]. Мне главное концептуально решить задачу! (с) АхаRu.
Линукс - это альтернативная ОС о которой известно, что она не является ОС ну вот просто ни разу. (с) Linups_Troolvalds.
А с какого такого перепугу пользователей линукса должно быть больше 1%? (с) petrun
Вне форума


Ага, ага, дилетанта видно за версту
Это точно.
если доступ к памяти видеоконтроллера идёт через ЦПУ, а не через контроллер ПДП (что абсолютно всегда имеет место в клиент-серверной архитектуре),
"Команды OpenGL реализованы как модель клиент-сервер. Приложение выступает в роли клиента: оно вырабатывает команды, а сервер OpenGL интерпретирует и выполняет их. Сам сервер может находиться как на том же компьютере, на котором находится и клиент, так и на другом."
compgraph.tpu.ru/lib_opengl.htm
А теперь ссылочка на одну из стареньких баг в арче, уже пофиксенную, просто ссылки на нормальную документацию до виндейцев не доходят. Итак
bugs.archlinux.org/task/3777
"Xorg still starts, and DRI still works fine, but AGP DMA is not enabled. This is not a major issue; however, using AGP DMA significantly improves OpenGL performance, so failing to use it is not desirable."
Остальной бред мне комментировать лениво, уже этого достаточно чтобы показать что представляют из себя виндовс гуру.
Yesterday it worked.
Today it is not working.
Windows is like that.
Вне форума
[ Сгенерировано за 0.010 сек, 7 запросов выполнено - Использовано памяти: 1.85 Мбайт (Пик: 1.93 Мбайт) ]