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
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.