Showing posts with label UI. Show all posts
Showing posts with label UI. Show all posts

Sunday, February 17, 2013

Qt5.0.0 eglfs "could not create the egl surface 0x3003" - Fix details

With the final Qt5.0 release, customers using NULL window system for the SGX drivers have reported issues with Qt5.0.0 eglfs default plugin. This results in loss of critical functionality like performance, no input event support, no cursor support. This does not affect Xcb/Weston users. Details and fix information below.

Symptom of the issue:

Any Qt5 application started with "-platform eglfs" or QT_QPA_PLATFORM set to eglfs, will throw below error and exit.

EGL Error : Could not create the egl surface: error = 0x3003                     Aborted

Root-cause, and How to fix:

Refer below for the QTBUG #id, and the patch itself that applies on Qt5 sources:

https://github.com/prabindh/qt-configs/blob/master/qt5_1.0_Feb13/

Result

Customers should be able to use eglfs like in Qt5 Alpha, with cursor/touch/keyboard support, as described in below post:

http://www.gpupowered.org/node/15



Thursday, December 27, 2012

Performance monitoring (ARM caches) for UI applications

For UI applications (including Qt, and other 2D / 3D applications), it is necessary to understand ARM - cache operations, and their behaviour under various conditions.

peemuperf (PMUperf seemed already taken, hence this!) uses the ARM PMU (Performance Monitoring Unit) to measure this data, and expose it to user applications via a proc entry. "Perf", OProfile etc do this, but unfortunately are not available out of box in mainline kernels for platforms like AM335x.  The source code for the Linux version that has been validated on AM335x and 37x platforms is at,

https://github.com/prabindh/peemuperf

Jeremy has forked this for an Android port at,

https://github.com/afrojer/armperf


Tuesday, May 25, 2010

Performance Profiling of GUIs on OMAP3

Na2dperf allows user to create and measure performance parameters of specific
end use-cases for Graphical UIs built on TI SOCs.

It also allows user to create dynamic libraries (that export the required interfaces) that can be dynamically loaded into the framework and performance to be measured without writing extra code.

The framework measures the below 3 key parameters for any UI developer:

- First screen show time
- Each screen update time
- Average CPU load during the run

The application allows the developer to pass in various configuration parameters of the UI - type and number of widgets and their detailed properties including alpha settings, frame rate control, and type of textures and backends to be used.

Validated with lighthouse/Qt 4.7.0 on OMAP3 Linux and Windows

Grab the code via SVN or Browse the code at,

https://gforge.ti.com/gf/project/gleslayer/scmsvn/?action=browse&path=%2Ftrunk%2FPackages%2FOMAP3_Graphics_SDK%2Fna2dperf%2F

Coming next, Android support...