Page 12 of 17

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

Posted: Thu Feb 07, 2013 10:00 am
by art_zh
Serge
Конечно давно пора
Я совсем забыл что у кого-то еще есть синий экран :)

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

Posted: Sun Sep 15, 2013 1:59 pm
by art_zh
А вообще, основное назначение пиксельной карты - валидация вида

Code: Select all

        mov     edx, [d_width_calc_area + ebx*4]
        add     edx, [_WinMapAddress]
        movzx   edx, byte [eax+edx]
        cmp     edx, [CURRENT_TASK]
        jne     .exit
т.е. в принципе байтовая карта может быть заменена на несколько битовых карт (свой/чужой пиксель) - по одной для каждого окошка.

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

Posted: Sun Sep 15, 2013 3:25 pm
by Serge
art_zh
Она ещё для определения курсора служит. И в драйверах используется. Этот z-буфер полезная штука.

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

Posted: Sun Sep 15, 2013 5:34 pm
by art_zh
Serge
Для мыши можно оставить ту же таблицу, но сделать ее некэшируемой. Там бустрафик небольшой.
Хотя... черт, тогда рисование тормозить будет.

Позарез нужно место в кэше для ядра и 5-7 приложений.

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

Posted: Sun Sep 15, 2013 7:15 pm
by Serge
art_zh
Там всё тормозить будет. Некешируемый обмен идёт со скоростью около 150-200Мб/с.

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

Posted: Fri Sep 20, 2013 12:31 am
by art_zh
Serge
а ежели с GPU-курсором и без драйверов - байтовая карта таки не нужна?

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

Posted: Fri Sep 20, 2013 7:22 am
by Mario_r4
art_zh wrote:байтовая карта таки не нужна?
А как ты в разумных нормах времени вычислишь кому принадлежит текущий пиксель?

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

Posted: Fri Sep 20, 2013 9:17 am
by Serge
art_zh
В твоём случае наверное надо отключать всю графику и работать в текстовом режиме.

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

Posted: Fri Sep 20, 2013 10:20 am
by art_zh
Mario_r4 wrote:А как ты в разумных нормах времени вычислишь кому принадлежит текущий пиксель?
Перебор окошек, накрывающих данный пиксель, - конечно дольше, чем чтение байта из массива,
но все-таки короче времени переключения контекста задачи при прерывании.
А нужен он очень редко - только при оконно-мышиной возне.
С другой стороны, для put_pixel чтение бита из короткой карты займет гораздо меньше тактов, чем выборка байта из самой длинной ядерной структуры.

Serge
Графика очень нужна - следить за прогибом и биениями вертолётной лопасти в полёте.

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

Posted: Fri Sep 20, 2013 12:19 pm
by Mario_r4
art_zh wrote:Графика очень нужна - следить за прогибом и биениями вертолётной лопасти в полёте.
Очень интересное заявление на фоне того что ты писал в чате - "прощевайте, заходить буду редко". :)

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

Posted: Fri Sep 20, 2013 3:15 pm
by art_zh
Никогда не говори "никогда"...
Со старой работы увольняюсь, а на новым боссам пофиг, что Колибри - это не Винда,
им главное чтоб железо заработало.

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

Posted: Fri Sep 20, 2013 5:36 pm
by Serge
art_zh
В таком случае править ядро, убирать проверку пикселей и делать одно приложение, работающее с графикой в монопольном режиме.

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

Posted: Fri Sep 20, 2013 5:50 pm
by Mario_r4

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

Posted: Fri Sep 20, 2013 6:00 pm
by Serge
Mario_r4
Не, это разные вещи.

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

Posted: Fri Sep 20, 2013 6:15 pm
by Mario_r4
Serge wrote:Mario_r4
Не, это разные вещи.
Но идеи пересекающиеся - в обоих случаях нужно отпиливать GUI.