[Qt-qml] hardware acceleration and qml

Romain Pokrzywka romain.pokrzywka at kdab.com
Thu Jun 24 11:27:07 CEST 2010


On Wednesday 23 June 2010 01:52:47 warwick.allison at nokia.com wrote:
> > I'd like to know more about the support for hardware acceleration in
> > qml. I remember an overview focused on it but in the last snapshot
> > documentation I can't find it. Is there a reason? Where I can find the
> > supported platforms?
>
> QML builds directly upon QGraphicsView, which in turn builds upon QPainter,
> which in turn builds upon QPaintEngine (and the internal QGraphicsSystem
> classes), which have various hardware accelerated implementations.
>

For the Raster paint engine (the default software based paint engine on most platforms), you will mostly get hardware 
acceleration through the multimedia operations of the CPU such as SSE2 on x86 and NEON on ARM (v7ff), but this is 
limited to a few image operations : blitting, scaling and compositing. There might be a few more operations optimized or 
vectorized by the compiler. Fortunately QML makes heavy use of images so you can get a significant acceleration through 
the multimedia coprocessors.

On the other hand, all the other painting operations (shapes, gradients, texturing, transformations, etc.) have 0 
hardware acceleration support so far.

It's also worth mentionning that Raster provides no GPU acceleration support. This would be provided by the OpenGL paint 
engine, but that engine suffers so many shortcomings that it rarely proves to be a worthy replacement. Hopefully this 
will change in the future.

Cheers

-- 
Romain Pokrzywka | romain.pokrzywka at kdab.com | Certified Qt Software Engineer & Trainer
Klarälvdalens Datakonsult AB, a KDAB Group company
Tel. Sweden (HQ) +46-563-540090, USA +1-866-777-KDAB(5322)
KDAB - Qt Experts - Platform-independent software solutions

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2396 bytes
Desc: not available
Url : http://lists.qt.nokia.com/pipermail/qt-qml/attachments/20100624/d9c35755/attachment.bin 


More information about the Qt-qml mailing list