PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Ce que vous allez apprendre dans cette leçon
  • Présentation
  • Lancer l'analyseur de performances
  • Analyse du résultat
Leçon 6.3. Analyseur de performances
Ce que vous allez apprendre dans cette leçon
  • Présentation.
  • Lancer l'analyseur de performances.
  • Analyser le résultat.

Durée estimée : 15 mn
Leçon précédenteSommaireLeçon suivante
Présentation
L'analyseur de performances (appelé également Profiler) est un outil permettant de vérifier et d'optimiser le temps d'exécution des traitements de votre application.
Son principe est simple :
  • Vous testez votre application.
  • Pendant ce test, l'analyseur de performances répertorie toutes les actions effectuées et sauvegarde les temps d'exécution de chacun des traitements exécutés.
A la fin du test, l'analyseur de performances vous présente :
  • les 10 manipulations qui ont pris le plus de temps,
  • la durée et le nombre d'appels de tous les traitements exécutés.
Le projet "WD Optimisation" contient une fenêtre spécifique permettant de visualiser des résultats intéressants avec l'analyseur de performances.
Lancer l'analyseur de performances
L'analyseur de performances peut être lancé :
  • directement depuis l'éditeur de WINDEV :
    Dans ce cas, le projet est alors automatiquement exécuté en mode test. Vous pouvez manipuler votre application et lancer les traitements de votre choix.
    Pour revenir sous l'éditeur WINDEV, il suffit de quitter votre application.
    L'analyseur de performances affiche alors le résultat de l'analyse. Ce résultat est enregistré sous forme d'un fichier WPF.
  • depuis un de vos traitements en WLangage, grâce aux fonctions suivantes :
    AnalyseurDébutLance la "collecte d'informations" pour l'analyseur de performances.
    AnalyseurFinArrête la "collecte d'informations" pour l'analyseur de performances.

    Dans ce cas, seul le code présent entre les fonctions AnalyseurDébut et AnalyseurFin est analysé. Le résultat est enregistré sous forme d'un fichier WPF.
  • Dans notre exemple, nous allons utiliser la première méthode. Pour lancer l'analyseur de performances sur le projet "WD Optimisation" :
    1. Sous le volet "Projet", dans le groupe "Audit et performances", déroulez "Analyser les performances" et sélectionnez "Analyser les performances".

      Note

      L'analyseur de performances peut également être lancé depuis le Tableau de bord du projet, via le Widget "Performances". Il suffit de :
      • activer le Widget si nécessaire (cliquez sur le lien "Cliquez ici pour réactiver").
      • dérouler le bouton fléché et sélectionner "Analyser les performances".
    2. Le test du projet se lance.
    3. Cliquez sur le bouton "Fenêtre de test de l'analyseur de performances".
    4. Cliquez sur le bouton "Traitement à analyser".
    5. Validez la fenêtre d'information et arrêtez le test du projet. La fenêtre du compte-rendu de l'analyseur de performances apparaît.
Analyse du résultat
  • Examinons la fenêtre du compte-rendu de l'analyseur de performances. Les résultats sont affichés dans plusieurs onglets :
    • l'onglet "Synthèse" présente les dix traitements qui ont pris le plus de temps.
    • l'onglet "Cartographie" présente une vision graphique des traitements les plus importants.
    • l'onglet "Détail" présente tous les traitements lancés lors du test de l'application (classés du plus long au plus rapide).
    • l'onglet "Appels" permet de visualiser le détail des opérations réalisées dans un traitement.
  • Détaillons ces différents onglets dans le cas de notre exemple.
    • L'onglet "Synthèse" présente les dix traitements les plus consommateurs de temps. Dans notre exemple, nous pouvons voir que la procédure locale "MetAJourStockProduit" prend plus de 3 secondes à s'exécuter.
    • L'onglet "Cartographie" permet d'identifier de manière visuelle ce qui a pris le plus de temps. Dans notre cas, c'est un appel à la fonction Ping :
    • L'onglet "Détail" présente tous les traitements appelés du plus long au plus rapide.
      Pour chaque traitement, les informations suivantes sont affichées :
      • Fonction : Fonction, traitement ou procédure exécutée.
      • Temps total : Temps d'exécution de la fonction.
      • Temps interne : Temps d'exécution dû au moteur.
      • Nb appels : Nombre d'appels effectués à la fonction (procédure ou traitement).
      • Temps 1 appel : Temps d'exécution d'un appel à la fonction (procédure ou traitement).
      • % Code : Pourcentage du temps passé dans le traitement de la fonction ou de la procédure (code du développeur pouvant être optimisé).
      • Parent : Elément qui contient le traitement.
  • Dans notre cas, l'onglet "Détail" permet de retrouver l'appel à la fonction "Ping" dans les éléments prenant le plus de temps.
    1. Sélectionnez cette ligne. Nous allons voir dans le code si un problème peut expliquer ce ralentissement.
    2. En cliquant sur le bouton "Appels", le détail des appels de la procédure MetAjourStockProduit apparaît. En sélectionnant la ligne "Ping" et en cliquant sur le bouton "Code", la ligne de code correspondante est affichée sous l'éditeur de code.
    3. Fermez l'analyseur de performances.
    4. La ligne de code exécutée est la suivante :
      // Vérifie l'accessibilité du serveur fournisseur
      Ping("adr-fournisseur")
      Le ralentissement vient du fait que l'adresse spécifiée pour la fonction Ping est inaccessible.
  • Testons rapidement le fonctionnement de l'application en optimisant ce code :
    1. Remplacez la ligne de code contenant la fonction Ping par la ligne de code suivante :
      // Vérifie l'accessibilité du serveur fournisseur
      Ping("www.google.fr")
    2. Enregistrez le code (Ctrl + S).
  • Nous allons maintenant relancer l'analyseur de performances :
    1. Sous le volet "Projet", dans le groupe "Audit et performances", déroulez "Analyser les performances" et sélectionnez "Analyser les performances".
    2. Le test du projet se lance.
    3. Cliquez sur le bouton "Fenêtre de test de l'analyseur de performances".
    4. Cliquez sur le bouton "Traitement à analyser".
    5. Validez la fenêtre d'information et arrêtez le test du projet. La fenêtre du compte-rendu de l'analyseur de performances apparaît.
    6. Sous l'onglet "Cartographie", la fonction Ping n'apparaît plus avec la même importance.
  • Fermez la fenêtre de rapport de l'analyseur de performances.
Leçon précédenteSommaireLeçon suivante
Version minimum requise
  • Version 23
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire