Developpez.com

Le Club des Développeurs et IT Pro

Perf, l'outil d'analyse de performances de Linux, désormais doté d'une interface graphique

Plus intuitive que la version ligne de commande

Le 2017-07-07 04:28:32, par Patrick Ruiz, Chroniqueur Actualités
KDAB, une firme allemande spécialisée dans la conception d’outils de visualisation graphique vient de publier hotspot v 1.0, une interface graphique proposée comme une alternative à la version ligne de commande de l’outil perf de Linux.

Dans sa version ligne de commande, l’outil perf fournit une sortie essentiellement statique. C’est certainement dans le but de faciliter l’obtention d’un rapport interactif qu’il a finalement été doté d’une interface graphique par un ingénieur de la firme KDAB.

Désormais, après une analyse des interactions entre les différentes couches matérielles et logicielles d’un système, l’outil affichera des informations sur la charge de travail processeur allouée à différents programmes, opérations d’entrées/sorties sur disques ou événements réseau entre autres, ce, semble-t-il, en temps réel.


Seulement, dans sa version actuelle, l’interface graphique est une alternative encore incomplète de la version ligne de commande. « Je me suis concentré à faire de hotspot une bonne alternative à sa version ligne de commande. Seulement, perf est un outil extrêmement polyvalent à la base. De ce fait, beaucoup de fonctionnalités d’analyse avancées ne sont pas encore supportées dans hotspot », déclare Millian Wolff, l’auteur de l’interface.

Doter l’interface graphique de fonctionnalités permettant de visualiser l’activité de processus bloqués ou en attente d’événements particuliers fait partie des tâches que Millian Wolf et ses collègues devront accomplir d’ici à la sortie de la prochaine version de l’interface. Beaucoup d'autres fonctionnalités sont encore à implémenter dans le profiler hotspot pour qu'il soit totalement au niveau de la version ligne de commande.

Il s'agit de développements à suivre de près compte tenu de l'utilité d'un tel outil pour les développeurs Linux.

Source : KDAB

Et vous ?

Qu’en pensez-vous ?

Voir aussi :

la rubrique Linux
  Discussion forum
11 commentaires
  • RyzenOC
    Inactif
    sous eclipse il y'a pas mal d'outils de Profiling
  • akoho
    Membre régulier
    @RyzenOC
    L'outil est disponible, doté d'une interface graphique. En aucun cas il était question de "les programmeurs ont décidé d'imposer l'interface graphique à tout le monde".
    Il est là, pour ceux qui en ont besoin, ok, ils l'utilisent. Pour ceux qui n'en ont pas besoin, ils ne l'utilisent pas. C'est aussi simple que ça.
  • LittleWhite
    Responsable 2D/3D/Jeux
    Bonjour,

    Je ne suis pas en accord avec vos propos, RyzenOC. En effet, il arrive que nous ayons une interface graphique (ne serait-ce que pour développer les programmes graphiques (jeux, utilitaires...)) et donc, l'utilisation de perf en ligne de commande peut sembler d'une autre époque. Alors oui, il arrive des fois que nous n'ayons pas d'interface graphique, mais pour ma part, ce ne sont que des machines de "prod" et non sur laquelle je vais développer (mais ce n'est pas une généralisation).
    Bref, de mon avis, il ne faut pas être contre l'apparition d'un nouvel outil, comblant une lacune. D'autant plus que cela ne vous supprime pas "perf" en ligne de commande (complémentarité).

    Par contre, je ne vois pas pourquoi vous parlez de monitoring Web (peut être à cause de la news ?). Cet outil (perf) est un profiler, pour connaître les hotspot des programmes (avec symbole de debug). Cela permet d'avoir une analyse pour faire de l'optimisation.

    (Je n'ai rien contre vous et finalement, je pense qu'il y a eu une confusion sur ce que faisait l'outil (confusion, qui n'est pas de votre faute).)
  • LittleWhite
    Responsable 2D/3D/Jeux
    Oui, mais glance fait du monitoring de système. perf, c'est pour profiler une unique application à un temps T, afin que par la suite, vous corrigiez le code source de l'application afin d'accélérer son exécution.
    Et non, sous Linux, les IDE (lesquels ?) ne fournissent pas vraiment d'outils pour les performances ... (malheureusement).
  • SurferIX
    Membre chevronné
    Toutes les personnes qui disent que "sans interface graphique comme c'est extrêmement souvent le cas l’application sera inutilisable" ou "l'utilisation de perf en ligne de commande peut sembler d'une autre époque" ne savent pas correctement utiliser la ligne de commande et pensent (à tort) que cliquer c'est plus rapide - sinon ils ne diraient pas ça. Je sais très bien faire les deux et la ligne de commande me rend souvent beaucoup plus rapide et donc productif.
  • dfaure
    Membre à l'essai
    L'utilité de perf et hotspot c'est surtout pour profiler des applications C et C++.
    Les IDE pour ces languages (QtCreator, KDevelop, et autres) ne fournissent pas tous de fonction intégrée de profilage.
    Pour profiler une application sur une machine de développement (sur laquelle on fait tourner l'IDE, donc graphique par définition) il est donc super pratique d'avoir un outil graphique pour lire et interpréter les résultats de perf.
    Un flamegraph ça permet de voir immédiatement où se trouve le problème, alors que la sortie textuelle de perf.... c'est vraiment pas facile à interpréter !
    J'aime beaucoup les outils en ligne de commande, pour beaucoup de choses différentes, mais pour visualiser un résultat de profilage, le flamegraph d'hotspot est vraiment idéal.
  • RyzenOC
    Inactif
    Envoyé par LittleWhite
    Bonjour,

    Je ne suis pas en accord avec vos propos, RyzenOC. En effet, il arrive que nous ayons une interface graphique (ne serait-ce que pour développer les programmes graphiques (jeux, utilitaires...)) et donc, l'utilisation de perf en ligne de commande peut sembler d'une autre époque. Alors oui, il arrive des fois que nous n'ayons pas d'interface graphique, mais pour ma part, ce ne sont que des machines de "prod" et non sur laquelle je vais développer (mais ce n'est pas une généralisation).
    Bref, de mon avis, il ne faut pas être contre l'apparition d'un nouvel outil, comblant une lacune. D'autant plus que cela ne vous supprime pas "perf" en ligne de commande (complémentarité).

    Par contre, je ne vois pas pourquoi vous parlez de monitoring Web (peut être à cause de la news ?). Cet outil (perf) est un profiler, pour connaître les hotspot des programmes (avec symbole de debug). Cela permet d'avoir une analyse pour faire de l'optimisation.

    (Je n'ai rien contre vous et finalement, je pense qu'il y a eu une confusion sur ce que faisait l'outil (confusion, qui n'est pas de votre faute).)
    actuellement si je veut un truc avec une interface moi j'utilise glances
    https://nicolargo.github.io/glances/

    l’intérêt de glance c'est de pouvoir fonctionner sans interface graphique.

    il arrive que nous ayons une interface graphique (ne serait-ce que pour développer les programmes graphiques (jeux, utilitaires...)) et donc, l'utilisation de perf en ligne de commande peut sembler d'une autre époque.
    Tous les IDE fournissent normalement des outils pour évaluer l'impacte sur les performances de ton programme.
  • Shepard
    Membre expérimenté
    Envoyé par RyzenOC
    Tous les IDE fournissent normalement des outils pour évaluer l'impacte sur les performances de ton programme.
    Tu penses à quel genre d'outil et sur quel IDE ? Tu as attisé ma curiosité :p
  • Shepard
    Membre expérimenté
    Et ces outils fonctionnent pour des langages non interprétés ? Je pensais que le profiling était l'apanage de Java et des langages à bytecode :/
  • RyzenOC
    Inactif
    c'est quoi l’intérêt ?
    1) si on as pas d'interface graphique comme c'est extrêmement souvent le cas l’application sera inutilisable.
    2) il existe déjà des tonnes de programme similaires permettant même d'aller plus loin et de faire du monitoring dans une page web

    une interface graphique proposée comme une alternative à la version ligne de commandes de l’outil perf de Linux.
    si c'est en ligne de commande justement c'est pas parce que c'est pratique, mais parce qu'on a pas d'interface graphique.
    l'outil perf est à mon avis plus utilisé justement dans les serveurs (sans serveur graphique) que sur les pc laptop ou un simple gestionnaire des taches suffit.

    A la limite peut être pour les développeurs qui veuelent mesurer l'impacte de leur programme? mais un bon ide fournie normalement déjà ces infos