LINUX.ORG.RU
 
shutty

[kde][тормоза] бенчмарк разных стилей виджетов


0

1

Сидел, скучал. Накидал программку, тестящую производительность различных стилей виджетов в кедах. Результаты примерно такие:

  • Oxygen - 1.85 msec
  • QtCurve - 1.46 msec
  • Windows - 0.25 msec
  • Motif - 0.21 msec
  • CDE - 0.19 msec
  • Plastique - 0.32 msec
  • Cleanlooks - 0.33 msec

Тестилось следующим образом: 2 десятка разных виджетов много-много раз рисуются в буфере, в качестве результата - средняя скорость рисования виджета. Машина слабенькая, celeron culv 723, intel gma4500. Сама тестилка тут

Вердикт: qtcurve и oxygen - тормоза. А какой стиль используете вы?

ПОСАДИ КОМПЬЮТЕР НА ЦЕПЬ И ЗАСТАВЬ ЛАЯТЬ!

домашняя автоматизация: сделай сам; лучший подарок для техногика

http://www.unicontrollers.com/products/unc01x

[#]  
Mystra_x64

Где тег фороникс?

***** ()
[#] Ответ на: комментарий от Mystra_x64 26.04.2010 15:29:34  
shutty

Это у тебя рефлекс такой чтоли при виде цифр?

* ()
[#]  

> Вердикт: qtcurve и oxygen - тормоза.

ну, какбы, там есть на что потратить время по сравнению с Motif и CDE. Градиенты, скруглённые углы и т.п.

** ()
[#]  

О! Как раз к месту мне информация!

*** ()
[#] Ответ на: комментарий от shutty 26.04.2010 15:30:33  
Mystra_x64

Намекаю, что хоть бы в двух словах описал как тестировал. А то в коде копаться не у всех желание есть. Дрова опять-таки какие, какое видео.

***** ()
[#]  

а по декорациям окон есть подобное?

*** ()
[#] Ответ на: комментарий от Mystra_x64 26.04.2010 15:34:06  
shutty

По просьбам трудящихся:

  • Создается набор тестовых виджетов (QPushButton, QGroupBox, QSpinBox, QComboBox, QLineEdit, QSlider, QLineEdit, QWidget, QMenu, QCheckBox, QScrollBar, QLabel, QTextEdit, QListWidget, QTableWidget, QTreeWidget, QScrollArea, QToolBox)
  • Каждый из виджетов 1000 раз рендерится в буфер QImage. На экран это дело не выводится чтобы не вносить лишний оверхед
  • Считается среднее время рендера одного виджета.

Примерно так.

* ()
[#]  

Atom N270, Gentoo, qt-4.6

Bespin - 1.63 msec
Oxygen - 0.77 msec
qtcurve - 0.79 msec
windows - 0.29 msec
motif - 0.24 msec
cde - 0.21 msec
plastique - 0.26 msec
cleanlooks - 0.29 msec

** ()
[#]  
Novell-ch

использую nitrogen - 1.44611 msec
для других
qtcurve - 1.09111 msec
polyster - 0.179333 msec
motif - 0.0705556 msec
oxygen - 1.95556 msec
windows - 0.0878889 msec
phase - 0.187444 msec
<вещества>
bespin - 8.56933 msec
</вещества>

*** ()
[#] Ответ на: комментарий от Novell-ch 26.04.2010 15:45:45  
shutty

Черт, надо было в код однострочник на qt зашить. Вы бы у меня поплясали, с*ки!

* ()
[#] Ответ на: комментарий от Novell-ch 26.04.2010 15:45:45  

У вас как-то очень сурово настроенный bespin.

** ()
[#] Ответ на: комментарий от shutty 26.04.2010 15:48:04  
Novell-ch

это ты оплошал, да, урок тебе.

*** ()
[#]  
Lockywolf

Когда был кедерастом - использовал CDE.

*** ()
[#] Ответ на: комментарий от Novell-ch 26.04.2010 15:54:23  

Если дефолтный - то понятно.

** ()
[#]  
ls-h

Попробуй потестить bespin.

* ()
[#] Ответ на: комментарий от ls-h 26.04.2010 16:00:42  
ls-h

А, пардон, не заметил.

* ()
[#]  
Windows		0.0965556 msec
Motif		0.0627778 msec
CDE		0.0641111 msec
Plastique	0.161944 msec
GTK+		1.09967 msec
Cleanlooks	0.178611 msec

KDE 4 в ломы ставить.

* ()
[#]  

Переделай тест, чтобы более понятные результаты выводил. Может тестить 50000 итераций?

* ()
[#]  
AX

>Cleanlooks - 0.33 msec

Теперь понятно, почему у меня кде не тормозит. :)

**** ()
[#]  

Makefile не нужен, лучше добавить

./build.sh

#! /bin/bash

qmake && make

* ()
[#]  
megabaks

~x86 E7200(3.04Ghz) 9400GT(блоб)
Bespin - 0.536778 msec
Oxygen - 0.385056 msec
Qtcurve - 0.336333 msec
GTK+ - 0.248944 msec
Cleanlooks - 0.0712222 msec
Plastique - 0.0714444 msec
Windows - 0.0551667 msec
Motif - 0.0476111 msec
CDE - 0.0446667 msec

** ()
[#] Ответ на: комментарий от shutty 26.04.2010 15:40:15  
Kosyak
>>-----Цитата---->>

# Каждый из виджетов 1000 раз рендерится в буфер QImage. На экран это дело не выводится чтобы не вносить лишний оверхед

<<-----Цитата----<<

Тогда производительность не будет зависеть от граф. карты, не?

** ()
[#]  
Gary

А почему motif такой медленный? Как раньше им пользовались?

***** ()
[#] Ответ на: комментарий от Gary 26.04.2010 17:28:20  
megabaks

фигасе - на мои цыферки погляди )

** ()
[#]  
Kosyak

Хе, запустил на мастдае (XP, E6550 2.33GHz)

>>-----Цитата---->>

Windows - 0.223944 msec WindowsXP - 0.243 msec Motif - 0.210944 msec CDE - 0.195278 msec Plastique - 0.248167 msec Cleanlooks - 0.245667 msec

<<-----Цитата----<<
** ()
[#] Ответ на: комментарий от Kosyak 26.04.2010 17:30:13  
megabaks

хех - вот тебе и спец тормоза )))

** ()
[#] Ответ на: комментарий от Kosyak 26.04.2010 17:30:13  
Kosyak

Теперь на Windows 7 Максимальная (P8400, 2.26GHz)

>>-----Цитата---->>

Windows - 0.253833 msec

WindowsXP - 0.254222 msec

WindowsVista - 0.317278 msec

Motif - 0.232556 msec

CDE - 0.220333 msec

Plastique - 0.266611 msec

Cleanlooks - 0.269889 msec

<<-----Цитата----<<

Прога собрана с Qt 4.6.2 (msvc 9.0)

** ()
[#]  
Gary
  • Bespin 1.63583 msec
  • Polyester 0.103556 msec
  • Oxygen 0.454778 msec
  • QtCurve 0.345167 msec
  • Phase 0.0805556 msec
  • Plastique 0.0742778 msec
  • Cleanlooks 0.0737222 msec
  • Windows 0.0552222 msec
  • Motif 0.0448889 msec
  • CDE 0.0417778 msec

amd64, C2D E6550 @ 2.3 GHz x2, GF 8600 (блоб)

ТС, у тебя случайно не АТИ?

***** ()
[#] Ответ на: комментарий от Kosyak 26.04.2010 17:42:21  
megabaks

>хех - вот тебе и спец тормоза )))
тааак - ну и кто тут заявлял про быструю морду в винде!? ^_^

** ()
[#]  
ip

athlon x2 4200 gf7050 qt4.5.3

Oxygen 0.59 msec
Qtcurve 0.202778 msec (all square, soft gradient)
Cleanlooks 0.114667 msec
Plastique 0.118778 msec
Windows 0.0727222 msec
Motif 0.0578889 msec
CDE 0.0546667 msec
Skulpture 0.0991111 msec
Phase 0.138333 msec

*** ()
[#]  

gentoo ~amd64
ноутбучный P7350 @ 2.00GHz

>>-----Цитата---->>

raster, по умолчанию у меня стоит

  • Oxygen - 0.1831 msec
  • QtCurve - 0.1798 msec
  • Windows - 0.0897 msec
  • Motif - 0.0721 msec
  • CDE - 0.0675 msec
  • Plastique - 0.0803 msec
  • Cleanlooks - 0.0867 msec
<<-----Цитата----<<
>>-----Цитата---->>

-graphicssystem native

  • Oxygen - 4.99 msec
  • CDE - 0.10 msec
<<-----Цитата----<<
>>-----Цитата---->>

-graphicssystem opengl

  • Oxygen - 0.1859 msec
  • CDE - 0.0675 msec

но тут и шрифты пропадают и прочие дефекты

<<-----Цитата----<<
()
[#] Ответ на: комментарий от C_H_A_D_o 26.04.2010 18:15:57  
megabaks

>-graphicssystem opengl
>но тут и шрифты пропадают и прочие дефекты

чтооо? О_О
~x86 всё хорошо
вообще всё собрано с USE opengl

** ()
[#]  
Kosyak

Блин, да не тупите вы так, в этом бенчмарке видеокарта/opengl вообще ни причем.

** ()
[#] Ответ на: комментарий от Kosyak 26.04.2010 18:21:15  
megabaks

причём причём! а opengl в кедах(например) это совсем не то что ты думаешь :)

** ()
[#] Ответ на: комментарий от C_H_A_D_o 26.04.2010 18:15:57  
AX

>но тут и шрифты пропадают и прочие дефекты

А если сглаживание отключить?

**** ()
[#] Ответ на: комментарий от AX 26.04.2010 18:41:14  
megabaks

а смысл? с ним нормально работает! это в данном случае руки/дрова/флаги/хз_что_ещё

** ()
[#] Ответ на: комментарий от AX 26.04.2010 18:41:14  

> А если сглаживание отключить?
Не помогает, тут ещё может из-за nouveau, но выходные прошли, сейчас разбираться не буду.

()
[#] Ответ на: комментарий от megabaks 26.04.2010 18:43:12  
AX

> смысл? с ним нормально работает!

Просто в какой-то из версий Qt был баг со шрифтами, там буквы почти не прорисовывались, если тип сглаживания был выставлен в vrgb.

**** ()
[#]  
Novell-ch

-graphicssystem raster ускорил oxygen c ~2 до ~0.2 пересобираю qt с предвкушением ускорения.

*** ()
[#]  

а кеды всегда тормознее xfce.

* ()
[#] Ответ на: комментарий от Novell-ch 26.04.2010 19:22:54  

> -graphicssystem raster

Ломает некоторые приложения, не советую.

* ()
[#] Ответ на: комментарий от tempuser002 26.04.2010 19:44:56  
Novell-ch

ну эти некоторые можно же запускать через -graphicssystem native

*** ()
[#]  
memnek

Bespin - 4.05494
Oxygen - 0.650556
QtCurve - 0.165167
Klearlooks - 0.198278
Windows - 0.0901667
Motif - 0.0498333
CDE - 0.0462222
Plastique - 0.0990556
GTK+ - 0.392667
Cleanlooks - 0.0989444

Стоит QtCurve

* ()
[#] Ответ на: комментарий от tempuser002 26.04.2010 19:44:56  
megabaks

>Ломает некоторые приложения
а какие?
пока я не пересобрал...

** ()
[#] Ответ на: комментарий от Novell-ch 26.04.2010 15:45:45  
Novell-ch

поставил qt c rasterom

oxygen - 0.179333 msec
windows - 0.0531667 msec
nitrogen - 0.110278 msec
bespin - 0.22 msec
qtcurve - 0.117889 msec
motif - 0.0560556 msec
skulpture - 0.0755556 msec

в обещем в 10 раз быстрее получается,пробежался по любимым программам, глюков пока не обнаружил.

*** ()
[#] Ответ на: комментарий от Novell-ch 26.04.2010 19:22:54  

Как переключить ? Просто включить raster для x11-libs/qt-gui ?

()