Наконец-то кошмарному потреблению GDI объектов для отрисовки gif похоже приходит конец. Наткнулся на замечательнейшую библиотечку, умеющую читать gif-файлы (правда не совсем корректно, пришлось изрядно попотеть, чтобы заставить ее работать на уровне TGifImage). Кстати спасибо fd00ch за наводку ;)
Думаю в следующем релизе или через релиз эта библиотека будет внедрена в инфиум (а также в qip2005) и квип станет работать еще быстрее;) (может быть даже уберем ограничение в 20 одновременно отображаемых смайлов)
Как итог сравнительная таблица на 7 тысяч одинаковых смайлов:
старый движок смайлов - занимает 129 Мб оперативной памяти и от 460 GDI объектов (число растет при увеличении окна на весь экран и при последующих изменениях размера)
новый движок - 9-11 МБ оперативной памяти и 62 GDI объекта (причем они относятся к самому окну, сами смайлы не потребляют GDI вообще), число не изменяется ни при каких условиях.
на 7 тысячах разных смайлов:
старый движок занял 190 МБ оперативной памяти и около 5 тысяч GDI объектов. при попытке поизменять размеры тестовый проект вылетел, ибо число GDI росло в геометрической прогрессии.
новый движок прекрасно загрузил все файлы, заняв 250 МБ оперативной памяти (и не заняв ни на 1 GDI объект более предыдущего теста).
Как говорится, эффект налицо. Не думаю, что найдутся извращенцы, одновременно за раз решившие послать 7 тысяч абсолютно разных смайлов:) так что отмена ограничения вполне реальна.
Теперь нужно отполировать имеющиеся наработки и начинать внедрять:) Молитесь за меня, друзья:)
воскресенье, 24 августа 2008 г.
Подписаться на:
Комментарии к сообщению (Atom)
8 комментариев:
Сега, ты маньяк =)
В хорошем смысле конечно =)
Раньше хоть понимали что много смайлов - тормоза, теперь же будет полный смайло-флуд =)
хорошая новость если снимете ограничение на количество одновременно показываемых смайлов
А что за новая библиотека? Очень интересно.
Спасибо.
Я вот всё думаю - а вы народ (который qip пишет ) про FastMM слышали?
2 Анонимный 1:
Библиотека называется Vampire Imaging Library. Только то, что сейчас лежит там очень далеко от полной поддержки gif.
2 Анонимный 2:
Неа, мы живем в тундре и таких умных словов даже не слышали ога.
Без зла сказал.. а ты обиделся- просто давно проект существует - а как то в трудах ваших он (fastmm)не заметен. Тока если в плагинах... иногда проскакивает
Сегодня хотел обновить свой инфиум до версии 9015, но при инсталяции доктор Веб кричит, что обнаружен троян!!!!! Sega-Zero мож это баг?
отличная новость.. побольше таких)
ждем релиза)
Отправить комментарий