Canonical présente l'utilitaire etrace, un outil de profilage d'applications polyvalent

Canonique

Canonical a introduit etrace, un utilitaire conçu pour suivre l'activité pendant l'exécution de l'application. Le programme ressemble aux utilitaires strace et ltrace et utilise également ptrace au moment de l'exécution.

L'objectif etrace principal débogue et analyse les applications démarrées from snap L'utilitaire vous permet d'évaluer rapidement quels programmes et quels fichiers sont utilisés lors de l'exécution d'un package snap.

Deux commandes sont fournies, "exec" et "file", pour savoir comment accéder aux fichiers et exécuter d'autres processus. Dans le premier cas, le travail des appels système liés aux fichiers est surveillé, et dans le second, la famille d'appels système exécutif est interceptée.

Etrace est une application de suivi générique, utile à trois grandes fins de mesure et de débogage:

  • Combien de temps il faut à une application pour afficher une fenêtre (graphique / UI) sur un écran.
  • La séquence des tâches créées et exécutées par le programme principal pendant son temps d'exécution. La liste des fichiers auxquels on accède lors de l'exécution d'un programme.

Ces métriques peuvent être utilisées pour déboguer des problèmes potentiels dans les snaps et comprendre ce qu'un package essaie de casser ou de trouver des goulots d'étranglement de performance en un instant.

Bien sûr, fonctionne également avec les packages Linux natifs ou tout programme exécutable, bien qu'avec des fonctionnalités prêtes à l'emploi légèrement réduites (il ne réinstalle pas le package natif, par exemple), mais vous pouvez toujours suivre l'application et mesurer le temps qu'il faut pour afficher une fenêtre.

L'utilitaire peut également être utilisé pour identifier les goulots d'étranglement performances dans les applications graphiques basées sur X11 et indique le temps nécessaire à l’initialisation de l’application avant de commencer le rendu de la fenêtre

En outre, les options de capture spécifiques «–reinstall-snap» et «–clean-snap-user-data» sont disponibles, vous permettant de réinstaller le package de capture pour effectuer une mesure sans cache ou supprimer les données utilisateur associées au package avant l'exécuter.

Utilisation basique

Etrace est disponible sous forme de package instantané, nous devons donc l'installer en premier. Etrace étant utilisé pour exécuter des programmes arbitraires, y compris d'autres packages d'instantanés et même des packages Linux traditionnels, il nécessite des autorisations à l'échelle du système via le verrouillage classique, qui peuvent être acceptées en utilisant l'indicateur –classic lors de l'exécution de la commande suivante.

Pour installer etrace:

snap install etrace --candidate --classic

Le premier cas d'utilisation etrace consiste à mesurer le temps nécessaire à une application graphique pour afficher une fenêtre sur un écran.

Commençons par un simple plugin, gnome-calculator, et répétons-le 10 fois pour voir combien de temps cette exécution prend. Notez que vous devez avoir installé gnome-calculator - installez gnome-calculator. Ici, nous utilisons l'option –no-trace car nous ne voulons pas de la pile de trace complète, nous voulons juste qu'etrace mesure le temps qu'il faut pour démarrer; nous entrerons dans les capacités de suivi complètes plus tard.

etrace --repeat = 10 exec --use-snap-run --no-trace gnome-calculator --cmd-stderr = /dev/null
Total startup time: 1.531152957s
Total startup time: 513.948576ms
Total startup time: 512.980061ms
Total startup time: 515.576753ms
Total startup time: 508.354472ms
Total startup time: 515.734329ms
Total startup time: 508.414271ms
Total startup time: 514.258788ms
Total startup time: 508.407346ms
Total startup time: 511.950964ms

En outre, Canonical a annoncé la mise en œuvre du support Snap pour l'algorithme de compression LZO. L'algorithme LZO se concentre sur l'obtention d'une vitesse de décompression maximale, au prix d'augmenter la taille du fichier résultant. Lors du test d'un package avec Chromium, l'utilisation de LZO au lieu de l'algorithme XZ par défaut vous permet d'accélérer la publication du package snap 2-3 fois en réduisant le temps nécessaire pour décompresser l'image SquashFS.

En particulier, le premier lancement de Chromium installé à partir d'un package deb normal prend environ 1,7 seconde.

La première version de Snap lors de l'utilisation de XZ prend 8.1 secondes et lors de l'utilisation de LZO - 3.1 secondes. Au redémarrage, avec les données mises en cache, les temps de démarrage sont de 0,6, 0,7 et 0,6 secondes. respectivement.

La taille du package snap est passée de 150 Mo à 250 Mo avec LZO.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.