Russian Qt Forum
Ноябрь 23, 2024, 00:15 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2 3   Вниз
  Печать  
Автор Тема: От чего зависит производительность qml  (Прочитано 24953 раз)
joker
Новичок

Offline Offline

Сообщений: 49


Просмотр профиля
« : Май 04, 2013, 18:42 »

Нужно было нарисовать приложеньку для POS. Решил сделать на QML. И, когда сделал часть на своем ноутбуке, начал тестировать.
При этом оказалось что все QML-ное тормозит просто жутко.  (Для пробы собрал пример interaction то же ощутимо лагает.)

Теперь немного технической информации:
Он (POS) собран на Intel Atom 525 (2 ядра, 1,8Ghz на ядро)
Как операционку поставил calculate linux (kde 4, x86_64). Работает вполне себе комфортно.
Поставил Qt5.0.2 x86_64 заранее собранный. Сам QtCreator тоже работает нормально

Вобщем есть ли идеи - то ли проблемы с тем, что 2 версии Qt (kde таки его пользует), то ли что нибудь с x86_64... То ли действительно никаких вариантов и надо переписывать на чем нибудь другом?
то ли еще есть какие проблемы.
 
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #1 : Май 04, 2013, 20:35 »

производительность QML зависит от производительности OpenGL.
Записан
joker
Новичок

Offline Offline

Сообщений: 49


Просмотр профиля
« Ответ #2 : Май 04, 2013, 21:51 »

в glxgears пишет:
Код:
direct rendering: Yes

Конечно работает то на набортном видео (Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller), но KDE4 же крутится нормально.
Уже попробовал на чистой системе (тот же calculate но без DE) - результат тот же

А вот при запуске qml-ного приложения тормозит... и загрузка камня под 80% улетает (процентов под 40 на ядро) - то есть какой то софтварный рендер, что ли.

Сейчас попробую поставить винду или другую никсу - посмотрим - не тянет ли конфигурация или беда с конкретным дистрибутивом
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #3 : Май 04, 2013, 22:30 »

У меня Uuntu 13.04, старенький ноут с целероном( M540) и встроенной графикой. QML-ные примеры не тормозят (максимум 15% проца)
В приложении мой вывод glxinfo .
Записан
joker
Новичок

Offline Offline

Сообщений: 49


Просмотр профиля
« Ответ #4 : Май 05, 2013, 20:39 »

Ерунда какая то.
Поставил 7ку... нормально работает.
Поставил Ubuntu - опять загрузка 80%

Получается что то не то с видеодрайвером? Точнее с его поддержкой opengl?
Но судя по glxinfo и glxgears всё вполне себе в порядке.

Вобщем буду искать вроде пара идеек нарылась - что нибудь наклюнется  - отпишусь
Записан
BuRn
Гость
« Ответ #5 : Май 05, 2013, 20:43 »

Ерунда какая то.
Поставил 7ку... нормально работает.
Поставил Ubuntu - опять загрузка 80%

Получается что то не то с видеодрайвером? Точнее с его поддержкой opengl?
Но судя по glxinfo и glxgears всё вполне себе в порядке.

Вобщем буду искать вроде пара идеек нарылась - что нибудь наклюнется  - отпишусь
проблема определенно в драйвере, а не пробовал поэкспериментировать с Xorg и собственно самими драйверами ?
Записан
joker
Новичок

Offline Offline

Сообщений: 49


Просмотр профиля
« Ответ #6 : Май 09, 2013, 18:47 »

Попробовал на чистой gentoo, оттюненой по максимуму (gentoo мне ближе) - производительность анимации сравнялась с windows 7  (точнее визуально более гладко, однако при проигрывании анимации - загрузка по каждому процессору растет до 20-30%, а как она растет при windows я не помню Грустный но явно двигается менее гладко)
Если я правильно понимаю - таки частично рендерится через cpu, просто при тюнинге отрабатывает меньше всякой промежуточной ерунды.
Соответственно вопрос - а можно как то собрать qt с более ранней (простой) версией opengl (где то видел что в qt5 используется opengl2, может имеет смысл собрать все с opengl1)?
И где можно посмотреть какую нибудь информацию по opengl и всяким связкам - пока натыкаюсь только на разрозненные кусочки
Записан
Отражение луны
Гость
« Ответ #7 : Май 17, 2013, 10:49 »

У меня абсолютно та же проблема с производительностью на том же pos терминале с тем же убогим железом (на другом pos терминалы не делают), только в качестве оболочки gnome-shell, что по сути не имеет значения.
Насколько я понимаю, qt5 работает только с opengl 2.0, и не ниже. Официально intel gma 3150 поддерживает opengl 2.0 на линуксах. Но на ubuntu почему-то мне его так завести не удалось.
glxinfo | grep OpenGL пишет весию 1.4 не смотря на все манипуляции с driconf.

Автор, будьте добры, отпишитесь, на генте и убунте у вас какие версии opengl заработали?
Существуют официальные баг репорты на тему:
https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/937734
https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/880034
« Последнее редактирование: Май 17, 2013, 10:53 от Отражение луны » Записан
Отражение луны
Гость
« Ответ #8 : Май 17, 2013, 11:17 »

upd: все же удалось запустить opengl 2.0 через driconf, до этого не получалось из-за ошибки прав доступа.
Стало чуть-чуть быстрее, но не намного. Подозрительно, что обычный gridview так сильно тормозит, даже на таком слабом железе. По всей видимости, действительно, дело в драйвере. Хотя справедливости ради стоит отметить, что gnome shell на нем работает вполне сносно.
Мб кто подскажет варианты решения? Не хотелось бы, конечно, использовать венду.
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #9 : Май 17, 2013, 12:03 »

это конечно "пальцем в небо" но попробуйте  - https://01.org/linuxgraphics/downloads , если у вас Убунта 12,04 или 12,10.
как вариант обновится до 13.04 - там все самое свежее.
Записан
Отражение луны
Гость
« Ответ #10 : Май 17, 2013, 12:06 »

Ubuntu 13.04, взята из тех соображений, что либы qt5 уже есть в стандартных репозиториях. Да и она вполне стабильна.
Полагаю, судя по вашему glxinfo qtquick 2 все же требует opengl 2.1
Ну а вообще было бы здорово почитать "системные требования" qtquick 2.0, но я их, увы, не нашел.
« Последнее редактирование: Май 17, 2013, 12:11 от Отражение луны » Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #11 : Май 17, 2013, 12:21 »

Полагаю, судя по вашему glxinfo qtquick 2 все же требует opengl 2.1
Насколько я понял то qtquick 2 ориентирован на OpenGL ES 2.0.
И как я писал выше, у меня сейчас убунта 13.04, все компоненты стандартные.

ЗЫ Можете выложить скрин окна "про систему" ?
Записан
Отражение луны
Гость
« Ответ #12 : Май 17, 2013, 12:48 »

К слову, на моём нетбуке с radeon 4225 на свободных драйверах все работает крайне шустро, ubuntu 13.04, Opengl 3.0.
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #13 : Май 17, 2013, 13:18 »

А  нельзя воткнуть в терминал самую простую и дешевую внешнюю видяху?
Записан
Отражение луны
Гость
« Ответ #14 : Май 17, 2013, 15:18 »

Увы, нет. Это по сути сенсорный моноблок. Да и лишнее это, проще пользовать тогда 1.1 и дай бог через год-два перейдем на arm или же ситуация с драйверами улучшится
Записан
Страниц: [1] 2 3   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.123 секунд. Запросов: 23.