Shadow buffer - моргающий курсор или так жить нельзя...

Kernel-side graphics support
  • Dell Inspiron N7010 (Intel i5) видео от Intel

    Стандартное ядро:
    Spoiler:
    1.png
    1.png (4.9 KiB)
    Viewed 3775 times
    Ядро с не моргающим указателем мыши:
    Spoiler:
    2.png
    2.png (4.85 KiB)
    Viewed 3775 times
    Шестеренки выдают 895 и 538 попугаев соответственно.
  • Mario
    Сделай тесты с перекрытием окна, интересно сравнить запись в видеопамять.
  • С перекрытием сделал для Roverbook U800
    Spoiler:
    3.png
    3.png (4.88 KiB)
    Viewed 3771 times
    Относительно стандартного окна прирост ни нас только большой, что впрочем объяснимо - обе памяти LFB и SHDB суть есть одна и та же память.
  • Вот для Dell Inspiron N7010 (Intel i5) видео от Intel - есть некоторый прирост с перекрытием:
    Spoiler:
    3.png
    3.png (4.47 KiB)
    Viewed 3771 times
    З.Ы. Можно обратить внимание на дичайший прирост в рисовании вертикальных и свободных линий. Где то в какой то теме форума вы с Артемом уже натолкнулись на проседание видеопамяти при рисовании линий.
  • Всё же накосячил. Небольшая просадка есть, но небольшая. А с перекрытием окна новое ядро быстрее. Инфа 146% :D .
    Spoiler:Слева новое ядро. Во всех тестах Single Pixel быстрее.
    MGB2.png
    MGB2.png (6.27 KiB)
    Viewed 3770 times
    Last edited by Serge on Wed Feb 29, 2012 4:48 am, edited 1 time in total.
  • Ты это... смотри там - торсионные поля не открой заново, с этими 146%. Нам еще нового путена всея РФии выбирать.

    Я одного не пойму почему с перекрытием быстрее? Оно ведь и там и там к LFB и SBF не обращается - отсечка идет до. Как оно быстрее то становится? Единственно я куда не попадя понавтыкал Align 4 может это оно сказывается?
  • Mario
    Не, на этот раз всё точно. Кстати, интересно проверить варианты- запись сначала в shadow а потом в видеопамять и наоборот. И ветвления посмотреть. На них можно сэкономить такты.
  • Хрен там, а не точно! Я сейчас проверил обычное ядро с перекрытием - результаты почти 1 в 1 на Dell. Ну, есть погрешность порядка пары процентов конечно. Ты не учел что при перекрытии в любом случае никуда ничего не записывается.
  • Mario
    Не пишется, но у меня прирост несколько процентов по всем позициям кроме текста. Точно не погрешность. Если ты выравнивал циклы и ещё что-то менял, то объяснимо. Больше всего на PIcture. Если эти 16% процентов только за счет выравнивания циклов то скажу одно: "Вот вы три байта сэкономили, а Elpida разорилась !".
    Spoiler:Тесты с перекрытием. Слева новое ядро.
    MGB3.png
    MGB3.png (6.5 KiB)
    Viewed 3766 times
  • Я каждую метку перехода в Vesa20.inc выравнивал, а еще в коде отрисовки курсора. А то что прирост от выравнивания есть - это я давно уже тут же ан форуме прочитал. Помнится первым про это Иван Поддубный сказал. Можно в ядре много чего выравнять, не знаю только какой процент распухания коду это придаст.
  • Если цикл без ветвлений, очень хорошо на 16 байт. Даже минимальное выравнивание на 4 байта дает прирост.
  • Если это более правильный подход, то почему часть показателей хуже?
    Лучше какой-то гибрид сделать - оставить те старые процедуры, которые быстрее новых и заменить те старые, которые медленные новых, на новые.
  • Не в обиду, но в правду:
    Закон Х.Л. Менкена.
    Кто умеет делать - делает. Кто не умеет - учит.

    Дополнение Мартина.
    Кто не может учить - управляет.
    Читать пост, где я выложил ядро - почему часть показателе хуже! Потому что штраф для кэша процессора! Большой кэш - меньше штраф!
  • свежий взгляд со стороны полезнее 3-х задрипанных цитат (с) Wildwest xD!

    из того же сборника СЛЕДСТВИЕ ВЕЙНБЕРГА:
    Квалифицированный специалист по ремонту лодок - это человек, который удачно избегает маленьких ошибок, неуклонно двигаясь к какому-нибудь глобальному заблуждению.

    Без обид, так без обид.
  • Who is online

    Users browsing this forum: No registered users and 2 guests