1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherches
    Inscrit en
    août 2008
    Messages
    23 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherches
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 23 389
    Points : 142 033
    Points
    142 033

    Par défaut Améliorations de l’utilisation de mémoire et du processeur dans Qt 3D

    Améliorations de l'utilisation de mémoire et du processeur dans Qt 3D
    L'architecture du moteur optimisée pour répondre aux besoins de Qt 3D Studio

    La performance et la stabilité de Qt 3D ne cessent de s’améliorer, grâce au travail acharné de moult contributeurs. Sa performance est principalement due à son architecture très flexible, qui sépare la partie visible (le rendu) des calculs (les aspects, responsables de la gestion des entrées et des animations, notamment). Ces aspects fonctionnent en parallèle, sur d’autres fils d’exécution, afin d’exploiter au mieux les processeurs multicœurs modernes ; ils nécessitent également une certaine duplication des données, pour éviter les synchronisations inutiles. De plus, les aspects de Qt 3D exécutent leurs travaux en définissant un certain nombre de tâches et leurs dépendances, afin d’avoir une granularité maximale dans l’ordonnancement des tâches. Pour le moment, Qt 3D est beaucoup retravaillé, au vu des plans futurs pour Qt 3D Studio.

    L’utilisation de processeur de Qt 3D a énormément diminué depuis sa première version, en Qt 5.6, jusqu'à la prochaine à venir, Qt 5.11. Ces améliorations sont dues à bon nombre de facteurs : des améliorations du solveur de dépendances entre tâches (qui s’exécute plus rapidement et donne de meilleures solutions), de QThreadPool (une classe de Qt Core utilisée pour gérer une série de fils d’exécution, mais en quantité moindre que requise pour Qt 3D), des caches de certaines tâches très gourmandes en CPU (comme QMaterialParameterGathererJob, dont le code était entièrement réexécuté à chaque image).



    Avec le même genre de travail, la consommation de mémoire a franchement diminué, surtout dans les applications les plus simples. Par exemple, la démo avec une bille qui tourne consomme quarante-cinq mégaoctets en moins (nonante-deux avec Qt 5.6.3, quarante-sept avec Qt 5.9.4). Une application plus complexe, du style de celles réalisées avec Qt 3D Studio, passe de deux cent vingt à cent trente-cinq (infographie).





    Sources et images : CPU usage improvements in Qt 3D, Memory usage improvements in Qt3D.
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions), HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre averti

    Inscrit en
    décembre 2009
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : décembre 2009
    Messages : 146
    Points : 384
    Points
    384

    Par défaut

    Merci pour cet article.
    A mon avis, et pour avoir bien joué avec Qt3D, s'il y a quelque chose à améliorer en urgence c'est bien la documentation.
    Elle n'est certainement pas au niveau du reste de la librairie : incomplète, obscure et examples pas à jour voire buggués.

    MG

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    octobre 2017
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : octobre 2017
    Messages : 20
    Points : 29
    Points
    29

    Par défaut

    C'est un peu comme la documentation QML, ça part dans tous les sens et c'est beaucoup moins clair qu'avec les QWidgets (je parle de la documentation). Il n'y a pas eu, à mon sens, de travail en amont pour donner des indications clairs aux programmeurs.

Discussions similaires

  1. Réponses: 24
    Dernier message: 16/02/2012, 18h27
  2. Réponses: 0
    Dernier message: 23/11/2011, 13h14
  3. Mémoires caches du processeur
    Par julien125 dans le forum C
    Réponses: 3
    Dernier message: 08/04/2008, 21h20
  4. Réponses: 2
    Dernier message: 21/01/2008, 17h53
  5. Réponses: 7
    Dernier message: 07/07/2006, 12h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo