La methode classique valable quel que soit le langage de programmation
et quelque soit le compilateur sous UNIX (je crois):
1) Tu ajoutes l'option -p a la compilation de tous tes fichiers ET a
l'edition de liens. Tu lances l'executable suffisament longtemps pour
t'affranchir de la phase d'initialisation pour que ce soit significatif.
Cela te cree un fichier mon.out dans le repertoire courrant. Ensuite la
commande:
prof nom_de_l'executable > listing
(il vaut mieux rediriger vers un fichier car c'est bavard) t'indique
quelles routines/fonctions sont les plus consommatrices.
2) Si les fonctions qui consomment beaucoup de ressources sont de grande
taille alors compile les fichiers qui les contiennent (et uniquement
ceux la) avec l'option -pg. Utilise egalement cette option a l'edition
de liens. Relance l'executable et utilise alors la commande
gprof nom_de_l'executable > listing.detaille
La, tu auras en principe une analyse fine au niveau des boucles de ces
fonctions. Tout compiler en -pg sur un code important te genererait un
trop gros volume d'information avec -pg et serait difficile a exploiter.
Bon courage.
Patrick
--
===============================================================
| Equipe M.O.S.T. | http://most.hmg.inpg.fr |
| Patrick BEGOU | ------------ |
| LEGI | mailto:Patrick.Begou@hmg.inpg.fr |
| BP 53 X | Tel 04 76 82 51 35 |
| 38041 GRENOBLE CEDEX | Fax 04 76 82 52 71 |
===============================================================