Profiler Hierarchique

Hello,

Voila, je cherche un profiler hiérarchique, du type Codewarrior Analysis Tool Suite (CATS) de Metrowerks, sur PC. Je l’ai utilisé sur PS2 et GameCube au boulot, et je l’ai trouvé bien mieux que VTune de Intel (qui a très, très mal tourné depuis la version 4 : quasiment aucune amélioration de l’interface utilisateur :stuck_out_tongue: ).

Si vous connaissez un outil de ce genre, ça m’intéresserait beaucoup pour le taf. J’ai vu que CATS existait sur PC à une époque, mais apparemment Metrowerks ne le fait plus que sur PS2/GCN. Zut.

A la limite, je me contenterai même d’un soft de profile en ligne de commande, tant qu’il offre les fonctionnalités de CATS en terme de profiling, l’interface je peux me la faire (vive .NET :stuck_out_tongue: ) sans trop de soucis.

Voili voila :stuck_out_tongue:

Après quelques recherches un peu plus poussées, j’ai trouvé AQtime, un soft très sympathique pour applications sur PC. Cela dit, ça coute $599, donc un peu cher pour un usage personnel :stuck_out_tongue: Je vais le recommander au boulot par contre :stuck_out_tongue:

Ca se trouve ici : http://www.automatedqa.com/products/aqnet.asp

Je continue à chercher un truc un peu plus dans mes prix (voire gratuit mais faut pas rêver) pour mon usage personnel :stuck_out_tongue:

(tiens je suis « member 17 », je savais que j’avais été parmi les premiers à m’inscrire sur la cafzone mais la… eh bé eh bé :P" )

Comme tu as eu une réponse, j’en profitte pour me culturer au passage : c’est quoi un profiler hiérarchique ?

[quote name=‘lucasbfr’ date=’ 23 Dec 2004, 00:15’]Comme tu as eu une réponse, j’en profitte pour me culturer au passage : c’est quoi un profiler hiérarchique ?
[right][post=“315747”]<{POST_SNAPBACK}>[/post][/right][/quote]
Exactement la question que j’allais poser… mais ça doit être très important pour être facturé à $599… :P" ok ok je sors !

AQtime fait plus que juste du profile hiérarchique :stuck_out_tongue:

Un profiler hiérarchique, grosso modo ça prends ton application, ça l’execute, pendant l’execution il mesure methode par methode le temps que ça a pris, le nombre d’appels, qui l’a appelé, qui est appelé, etc.

Au final, ça te sort un call graph (un graphe de qui appelle qui et qui est appelé par qui), et ça te dit quelles sont les fonctions les plus appelées, quelles sont les fonctions qui prennent le plus de temps, etc. Bref, ça te sort le « profil » de ton application d’un point de vue « hiérarchique », d’où le nom :stuck_out_tongue:

Super pratique pour optimiser, ça peut aussi aider à debugger des fois : tu peux remarquer qu’une méthode est appelé 2x trop souvent, ce qui fait que des calculs peuvent être fait de manière incorrect par exemple.

Bref, un outil fort pratique que j’adore :stuck_out_tongue:

gprof ou Quantify

D’après ce que j’ai pu lire, gprof est assez peu « fiable ». D’ailleurs j’ai pas encore trouvé de version Win32 :stuck_out_tongue: Mais je vais le tester en effet…

Pour Quantify, c’est cher :stuck_out_tongue: Je préfére rester sur AQtime quitte à payer :stuck_out_tongue:

[quote name=‹ tuo › date=’ 24 Dec 2004, 00:55’]D’après ce que j’ai pu lire, gprof est assez peu « fiable ». D’ailleurs j’ai pas encore trouvé de version Win32 :stuck_out_tongue: Mais je vais le tester en effet…

Pour Quantify, c’est cher  :stuck_out_tongue: Je préfére rester sur AQtime quitte à payer  :stuck_out_tongue:
[right][post=« 316096 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Oui, j’ai effectivement eu des doutes quant à la véracité des infos mesurées par gprof. Mais ce n’est pas le seul. Quantify m’a étonné sur certains aspect et j’ai pu démontrer qu’il se gourrait dans certains cas. Si tu as du récursif, Quantify est à la ramasse ! en fait, j’avais plus (+) confiance en gprof qu’en Quantify mais je n’arrivais pas à recouper certaines mesures avec un bête ‹ time › Unix B).

Je n’ai pas trouvé de profiler « sûr » pour le moment, et c’est bien chiant lorsque tu souhaites « monitorer » une appli :stuck_out_tongue: