gprof

Linux
Publiée le 2026-09-14 05:11:29
Illustration Linux pour la commande gprof

gprof

# Compile ton code en incluant les flags de profilage (-pg)
gcc -pg mon_programme.c -o mon_appli

# Exécute l'application pour générer le fichier de données gmon.out
./mon_appli

# Analyse le fichier de profilage (gmon.out est créé automatiquement)
gprof mon_appli gmon.out > rapport_profil.txt

# Affiche un résumé simple des appels de fonctions
gprof --brief mon_appli gmon.out

# Génère une sortie avec l'ordre des fonctions pour une meilleure lisibilité
gprof --function-ordering mon_appli gmon.out

# Affiche les lignes spécifiques où le temps est passé (utile pour le débogage)
gprof --line mon_appli gmon.out

# Analyse et affiche uniquement les données de temps d'exécution
gprof --time mon_appli gmon.out

# Ajoute des annotations sources au rapport généré
gprof --annotated-source mon_appli gmon.out

# Affiche le graphique des appels (si l'option est supportée)
gprof --graph mon_appli gmon.out

# Décompile les noms de symboles si nécessaire (demangling)
gprof --demangle mon_appli gmon.out

# Calcule et affiche la proportion du temps passé dans chaque fonction
gprof --sum mon_appli gmon.out

# Affiche toutes les fonctions, même celles qui n'ont pas été appelées
gprof --display-unused-functions mon_appli gmon.out

# Utilise le format traditionnel de sortie (pour la compatibilité)
gprof --traditional mon_appli gmon.out

# Spécifie un chemin de répertoire pour les fichiers sources si besoin
gprof --directory-path=/chemin/sources mon_appli gmon.out

# Affiche l'aide complète sur toutes les options disponibles
gprof --help

# Vérifie la version de l'outil gprof
gprof --version

# Exécute le profilage avec un niveau de débogage spécifique (ex: 2)
gprof --debug=2 mon_appli gmon.out

# Analyse en utilisant une liste multiple de fichiers de données
gprof file1.out file2.out > rapport_multi.txt