Archives de Tag: qt quick

À l’attention des contributeurs Qt : testez vos patchs avec Qt Autotester


Flattr this

Salux !

Vous le savez certainement, l’un des pires ennemis du développeur est la régression : un patch ou un ajout qui, en réalité, cause plus de problèmes qu’il n’en résout.

Qt n’échappe pas à la règle, d’autant plus que dans le cadre d’un développement ouvert, les tests effectués sur les contributions sont inconnus. Les labs Qt ont donc mis à disposition des contributeurs un outil pour faciliter les tests de non régression.

Le principe est simple : Qt intègre déjà une batterie de tests unitaires afin de valider une branche en attente avant sa fusion avec la branche principale. Afin de gagner du temps, chaque contributeur pourra dorénavant bénéficier d’une interface graphique (disponible ici) pour effectuer ces vérifications.

Sélectionnez une batterie de tests prédéfinis, spécifiez quelle version est concernée, puis attendez les résultats. Exemple donné dans le billet, pour un patch sur QGraphicsView, 19 tests commencent par « qgraphics ».

L’interface a été revue avec QtQuick pour être plus esthétique.

 

Capture de Qt auto-test

Capture de Qt auto-test (2)

Informations à retenir

  • Il est possible de travailler avec plusieurs versions/branches de Qt.
  • L’outil est multiplateforme.
  • Possesseurs de Windows, vous pouvez effectuer les tests sur un Symbian à distance.

Source :

Le Manchot Enragé

Tagué , , , , , ,

Intégration d’OpenCL dans Qt ?

Salux !

Les trolls de Nokia ont décidément le vent en poupe ! L’arrivée imminente de Qt 4.7 avec QML et QtQuick[1] fait déjà saliver plus d’un développeur, et voilà que Rhys Weatherley poste un billet[2] sur le blog de QtLabs titrant « L’utilisation d’OpenCL avec Qt » (Using OpenCL with Qt).

Petit rappel : OpenCL est un standard fourni par Khronos Group[3] (le même qui fournit OpenGL) pour la programmation d’applications parallèles exploitant les ressources GPU. L’intérêt ? Bénéficier d’une gigantesque puissance de calcul pour pas cher, puisque les GPU actuels sont extrêmement puissants.

Donc, l’équipe Qt s’intéresse à OpenCL. Pour l’instant, rien d’indiqué concernant l’intégration à la branche principale, mais Weatherley précise que le module expérimental est compilable avec Qt 4.6 & 4.7.

L’objectif de ce module est de pouvoir intégrer facilement OpenCL avec QtOpenGL ou QImage (images matricielles) cite-t-il en exemples pour la partie calcul. Parmi les utilisations intéressantes on retrouve la manipulation de matrices (QTransform), flou gaussien, chemins (QPainterPath) et Mandelbrot. Ayant créé un exemple de Mandelbrot, Rhys est passé de 5 fps à 120 en passant du calcul CPU à OpenCL !

Concernant la programmation concurrente QtOpenCL bousculerait QtConcurrent sur certains points car il serait trop orienté CPU homogènes, alors que OpenCL se veut utilisable avec des unités hétérogènes. Rien d’insurmontable tempère cependant Rhys, qui a déjà obtenu des résultats prometteurs.

Par contre, l’univers de l’embarqué semble plus réticent. Les processeurs ARM/NEON fourniraient un niveau de performance suffisant pour qu’OpenCL y soit très peu présent. Basés sur des simulations, la démo Mandelbrot serait pourtant capable d’afficher de 10 à 60 fps, ce qui est respectable pour un périphérique mobile !

Quand aux curieux, non je n’aurais pas recours à OpenCL pour DbMaster. Namého.

Liens

[1] Annonce de la pré-version de Qt 4.7 http://qt.nokia.com/about/news/qt-4.7-and-qt-creator-2.0-technology-previews-released

[2] Billet sur QtLabs http://labs.trolltech.com/blogs/2010/04/07/using-opencl-with-qt/

[3] OpenCL sur Wikipédia http://fr.wikipedia.org/wiki/OpenCL je vous conseille cependant la version anglaise, plus complète : http://en.wikipedia.org/wiki/OpenCL

Le Manchot Enragé

Tagué , , , , , , , , ,