LINUX.ORG.RU

Qt теперь еще быстрее

 ,


0

0
"Извините ребята, но ваше новое железо будет простаивать" — так начинается пост в блоге Trolltech Labs, посвященный последним оптимизациям в рендере.

Основные изменения коснулись растрового рендера, который используется для отрисовки на win32, а также рисует QImage на X11 и Mac (напомню, что совсем недавно Qt/Cocoa был интегрирован в основную ветку, что позволяет не только использовать больше нативных интерфейсов, но и собирать 64-битные приложения Qt под OS X).

Время инициализации QPainter (используется везде, где нужен графический контекст) уменьшено в четыре раза. Операции сохранения/восстановления контекста теперь работают напрямую с движком рендера платформы, принося огромный (clip) и не очень (xform) прирост в производительности. Рендеринг текста на win32 так же сильно оптимизирован (в три раза эффективнее). К сожалению, никакой информации насчет X11 и Mac.

Самое главное, что виджеты теперь отрисовываются намного быстрее (до 50% прироста). В синтетическом тесте, в котором каждый виджет постоянно перерисовывал себя, QLabel, ранее отрисовывавшийся за ~1000 миллисекунд теперь появляется на экране за ~400 миллисекунд. Конечно, этот показатель и так мал, но в сложных неоптимизированных интерфейсах, да еще и с анимацией...

Пока что Qt Falcon не добавлен в основное дерево, так как рефакторинг кода еще не завершен. А это значит, что к Qt 4.5 мы, может быть, увидим еще больше оптимизаций.

>>> Подробности

★★

Проверено: JB ()
Господи, что же сейчас начнётся...
anonymous
()
> Скорость инициализации QPainter (используется везде, где нужен графический контекст) уменьшена более чем в два раза.

И они этим типа гордятся? Уменьшением скорости?

> Самое главное, что виджеты теперь отрисовываются намного быстрее (до 50% прироста). Так QLabel ранее отрисовывавшийся за ~1000 миллисекунд теперь появляется на экране за ~400 миллисекунд. Конечно этот показатель и так мал

Мде. 1000 миллисекунд - это 1 секунда. Что, Qt настолько тормозная, или кто-то перепутал миллисекунды с микросекундами?

tailgunner ★★★★★
()
Ну и чо? Эти техноонанисты теперь будут наносекундами меряться и пох на то, что глаз этого не заметит? Забивая тем временем полностью на юзабилити и дизайн.

Узнаю отпеаренных адептов плюсов - придумать пузомерку от балды и радостно фапать на циферки.

Учите HIG, дети!

Gharik
()
Ответ на: комментарий от tailgunner
> Мде. 1000 миллисекунд - это 1 секунда. Что, Qt настолько тормозная, или кто-то перепутал миллисекунды с микросекундами?

А хз, на оригинальном графике миллисикунды... Может они пачку виджетов рисуют, ибо 1 слишком быстро...

Farcaller ★★
() автор топика
ждём в лучших репозториях страны...
exah
()
Ответ на: комментарий от Gharik
> Учите HIG, дети!

HIG к граическому фреймфорку имеет мало отношения. Так можно и на мотифе полностью следовать OSX HIG.

Farcaller ★★
() автор топика
В принципе неплохо, только кто этим пользуется?

При таком неадеквате в софте q* k* qt может быть сколь угодно хорош без ущерба для окружающих

APM
()
Похоже что ошибка на графике, где сравниваются скорости отрисовки QLabel и QProgressBar, - никогда не видел, чтобы прогрессбар рисовался 5 секунд. Кстати, на предыдущем графике со скоростью drawPixmap() по шкале именно микросекунды.
Zylon80
()
Ответ на: комментарий от Farcaller
> А хз, на оригинальном графике миллисикунды... Может они пачку виджетов рисуют, ибо 1 слишком быстро....

The numbers below are taken from a benchmark of a few widgets where we simply run “repaint()” a bunch of times.

Перевести?

Aceler ★★★★★
()
Ответ на: комментарий от Zylon80
Ошибка не на графике, ошибка в новости... была. Автор упустил одну "незначительную" деталь.
Aceler ★★★★★
()
Ну хоть кто-то думает об оптимизации кода, а не о том, что у пользователя и так мощный комп.
pento ★★★★★
()
>JB
>Gharik

анонимусы, кого не хватает в этой чудесной компании?
anonymous
()
КДЕ - тестовый полигон для QT.

Вся эта свистопляска с переписывание КДЕ под новым QT собственно только по этому и начиналась - иметь полноразмерное, графически сложное приложение, на котором можно мерять и тестировать QT, но не как не доводить КДЕ до статуса "полноценно рабочее ДЕ".

А по факту, QT угребищно ужасно и не смотрибельно.

anonymous
()
Ответ на: комментарий от Farcaller
> епт :-/

Ты смотри, я добрый. А мог бы скастоваться Skull и ты бы попал на орехи.

Aceler ★★★★★
()
Новость приятная, но ведь сейчас набегут тут разные..
Amp ★★★
()
Ответ на: комментарий от anonymous
>А под планом это работает?

У меня тут полный ящик плана. Приходи, заработает.

anonymous
()
Вот и отлично. Хоть кто-то копает в сторону увеличения быстродействия.
Df_Yz
()
Ответ на: комментарий от JB
>qt разгоняется для хорошего удара об стену? =)

4.3.

Вакансия бьющегося об стену зарезервирована за Томми пожизненно :)

Demon37 ★★★★
()
Ответ на: комментарий от APM
> При таком неадеквате в софте q* k* qt может быть сколь угодно хорош без ущерба для окружающих

q* и k* софт по большей части как раз очень адекватен, в отличии от APM.

anonymous
()
Представил себе интерфейс из нескольких Label, каждый из которых отрисовывается по 1000 ms :D
anonymous
()
тут только гика нехватало...

комментить не буду ибо гномер в модераторах, пожалею скор, ибо вдруг матюгнуться потребуется, а скора вдруг не хватит...
AiFiLTr0 ★★★★★
()
Ответ на: комментарий от Demon37
>> КДЕ - тестовый полигон для QT.
> Где в новости буквосочетание KDE, анонимный друг?


КДЕ и КуТе - близнецы-братья кто более матери-истории ценен? Мы говорим КуТе, подразумеваем - КДЕ, мы говорим КДЕ..
Bod ★★★★
()
Ответ на: комментарий от JB
>qt разгоняется для хорошего удара об стену?

ну тебя то ему не догнать никогда

kingstone
()
Ответ на: комментарий от Bod
>КДЕ и КуТе - близнецы-братья

Настолько же близнецы, насколько корова и колбаса.

Demon37 ★★★★
()
>собирать 64-бит приложения Qt под OS X

Абасцака.
Neko
()
Ответ на: комментарий от Bohtvaroh
> Даже тут нацпол. :-X

это единственная "правая" песня с того альбома, и если бы не последние куплеты - была бы вообще замечательной :)
overmind88 ★★★★★
()
Ответ на: комментарий от anonymous
>Представил себе интерфейс из нескольких Label, каждый из которых отрисовывается по 1000 ms :D

читай внимательней:

>>В синтетическом тесте, в котором каждый виджет постоянно перерисовывал себя

anonymous
()
Ответ на: комментарий от overmind88
> это единственная "правая" песня с того альбома, и если бы не последние куплеты - была бы вообще замечательной :)

Ну, "тот" альбом в музыкальном плане очень хорош. ;-)

Bohtvaroh ★★★★
()
Ответ на: комментарий от Gharik
>> Забивая тем временем полностью на юзабилити и дизайн.

Юзабилити и дизайн чего?

Deleted
()
Ответ на: комментарий от JB
>qt разгоняется для хорошего удара об стену? =)

сам пошутил, сам посмеялся... я тоже хочу быть модератором!!!

anonymous
()
Ответ на: комментарий от xscrew
>имхо, может кутя и лучше гтк, но опять же, кде4 и все все все ужасны)

+1.

Авторам куте хочу посоветовать побольше трахать блондинок. Когда вы хорошо натренеруетесь, поднимется Ваш качественные и количественный показатель - вот тогда вы поймете чего так не хватает в Qt.

anonymous
()
Ответ на: комментарий от anonymous
Под планом работает фсё!!!.......
anonymous
()
Ответ на: комментарий от MadCAD
> Это радует. Значит Кеды будут существенно быстрее =)

Дожить бы, а то пока, читая отзывы, и пробовать не хочется.

Bohtvaroh ★★★★
()
К сожалению, разработчик этот сидит на винде, и оптимизации эти касаются винды, за исключением QImage. Ждём аналогичных действий под X11.
JackYF ★★★★
()
Ответ на: комментарий от Gharik
> Ну и чо? Эти техноонанисты теперь будут наносекундами меряться и пох на то, что глаз этого не заметит?

Если за компом сидишь ты один - то да, не заметит.

Если залогинился на терминальный сервер, на котором сидит ещё 10-20 человек - то пусть лучше и дальше оптимизируют.

> Забивая тем временем полностью на юзабилити и дизайн.

Это не прямая задача программистов. Дизайном занимаются... ДИЗАЙНЕРЫ!

ximeric
()
Ответ на: комментарий от anonymous
Да, забыл еще. Главное перестать дрочить на скорость. Если не выходит с блондинками, то на крайняк пойдут гламурные брюнетки.
anonymous
()
Ответ на: комментарий от pento
> Ну хоть кто-то думает об оптимизации кода, а не о том, что у пользователя и так мощный комп.

Естественно, никто. Добро пожаловать в реальный мир.

haywire
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.