Оптимизация ядерной графики

Kernel-side graphics support

POLL Ваше мнение об оптимизации GUI ядра

Total votes: 68
Оставить как было
24%
16
Убрать только CGA и VGA, оставить VESA1.2
7%
5
Оставить только VESA2-режимы (без изменения)
10%
7
Разделить 24 и 32bpp графику в условно-компилируемые блоки
26%
18
Оставить в ядре единственный 32bpp-режим
32%
22

  • У них просто нет достаточного количества людей, чтобы подготовить документацию. И самая большая проблема блок UVD. Этот видеодекодер способен декодировать защищённый DRM контент (BR DVD). Копирастическая паранойя Sony и MS постановила, что на пути от диска до монитора/проектора контент не должен быть перехвачен и записан злобными пиратами.
    Spoiler:Компания Microsoft включила в свою операционную систему Windows Vista технологию Protected Media Path (рус. защищенный канал данных), позволяющую шифровать информацию, передаваемую видеокарте или монитору, а также запрещать воспроизведение, если запущены программы без цифровой подписи[
    Но вся эта защита осуществляется программно ядром ОС, драйверами, и сертифицированными плеерами. В АМД опасаются, что собрав доступную информацию и применив реверс-инжиниринг, кто-то сделает драйвер, декодирующий защищённые диски под Win. И Protected Media Path накроется медным тазом. В этом случае GPU АМД поменяют наклейку на "Windows incompatible", что автоматически закроет для них рынок OEM.
  • Serge спасибо, за инфу. Интересные дела. Да, это может влиять серьёзно.
    И опять всё замыкается на прибыль, монополию, управление всем и вся, колючкой все интерфейсы повязать и цианидами все видеопроцессы поотравлять. :D
  • Набросал утилитку для оценки системных задержек.

    Ось времени направлена вниз; длина столбиков гистограммы = число зарегестрированных задержек в данном диапазоне.
    Первые 100 точек - в масштабе 1pix/мкс, следующие 100 - 2 микосекунды на пиксель, затем 4мкс, и т.д.

    В правом нижнем углу - максимальная задержка (мкс) за все время измерений.
    Самые длинные задержки - при перемещении окон (до 20мс) и запуске программ (до 30мс).

    При перемещение мышки задержки около 30мкс, нажатие клавиши ~10мкс
    Attachments
    LATENCY.7z (821 Bytes)
    Downloaded 324 times
    latency.png
    latency.png (4.54 KiB)
    Viewed 7773 times
  • art_zh
    Такую вещь надо в обязательном порядке включать в ночную сборку. Очень полезная утилита. :)
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • art_zh wrote:Набросал утилитку для оценки системных задержек.
    а как быть с накладками обработчика SMI? Ведь некоторые задержки будут неактуальной суммой двух таймингов.
    Или ты в редакции "А" рубишь чипетознаниями AMD железяк SMI напрочь и тогда все "стерильно"!? :)
    Если это для иллюстративных "прикидок", чтобы посмотреть, тады да.
  • Mario
    Она пока что кривая как русло Амазонки.

    VaStaNi
    Я не знаю какой из этих пиков - SMI (и есть ли он там ващще).
    Задержки 500мкс и 1.5мс случаются очень редко и однозначно к графике отношения не имеют (переключение задач?)
  • Code: Select all

    mcall 38, 16*65536+16, 30*65536+530, 0
        mcall 38, 10*65536+16, 130*65536+130, 0
        mcall 38, 10*65536+16, 230*65536+230, 0
        mcall 38, 10*65536+16, 330*65536+330, 0
        mcall 38, 10*65536+16, 430*65536+430, 0
        mcall 38, 10*65536+16, 530*65536+530, 0
    Можно записать как

    Code: Select all

        mcall 38, 16*65536+16, 30*65536+530, 0
        mcall , , 130*65536+130
        mcall , , 230*65536+230
        mcall , , 330*65536+330
        mcall , , 430*65536+430
        mcall , , 530*65536+530
    Из хаоса в космос
  • art_zh wrote:Задержки 500мкс и 1.5мс случаются очень редко и однозначно к графике отношения не имеют (переключение задач?)
    Погоняй её "в сухую" тогда то, что надо всплывет, а лишнего не будет.
    Где то была темка тут про такие вещи, но недожатой мной так и осталась (года 2 назад)..., мы там, кажется с Serge про влияния дискутировали.
  • Если кого интересуют сравнения - вот пример для винды
    Процессор 3ГГц, время измерения около 10секунд (график Колибри набирался около 10 минут)
    2 жирных пика соответствуют задержкам 2мкс и 10мкс; задержек дольше 200мкс почти не видно, но как и в Колибри наблюдается слабый 2-миллисекундный хвост.
    Attachments
    Latency.png
    Latency.png (6.43 KiB)
    Viewed 7719 times
  • art_zh wrote:Набросал утилитку для оценки системных задержек.
    Надеюсь ты не против, если я залью утилиту на SVN?

    Также есть мысль - для минимизации воздействий от самой программы имеет смысл рисовать в область памяти, в течение определенного количества времени, а потом вывести окно с рисунком.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Марат, не торопись - меня еще на svn пока не забанили, и я её сам залью на-днях.
    Просто она реально кривая, стыдно людям показать.
    и дело не только в графике - надо для начала логарифмическую шкалу времени до ума довести,
    и временнЫе засечки не по nop делать, а по всему активному циклу - так выше вероятность поймать "длинную" задержку.
  • Mario_r4 wrote:
    art_zh wrote:Графика очень нужна - следить за прогибом и биениями вертолётной лопасти в полёте.
    Очень интересное заявление на фоне того что ты писал в чате - "прощевайте, заходить буду редко". :)
    да, теперь у Колибри есть еще одна (в самом прямом смысле встраиваемая) сфера деятельности.
    (подробностей не будет)
  • art_zh wrote:да, теперь у Колибри есть еще одна (в самом прямом смысле встраиваемая) сфера деятельности.
    (подробностей не будет)
    Ну, так мог бы и не писать вообще тогда. А то получается "что то, где то, зачем то произошло, но я вам не говорил, потому что секретно".
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Mario_r4
    У нас есть такие приборы. Но мы вам о них не расскажем
  • Who is online

    Users browsing this forum: No registered users and 5 guests