Est-il possible de changer le nom par défaut du fichier gmon.out, qui est créé lorsque l'indicateur de profil (-pg) est défini lors de la compilation avec gcc, , par exemple, [nom de l'exécutable] .gmon.out? J'ai besoin de cela parce que j'ai plus d'un exécutable, qui sont situés dans le même répertoire, et doivent fonctionner en parallèle.Modifier le nom du fichier gmon.out lors de la compilation avec -pg
Répondre
Pas si court, mais en réalité la réponse est OUI - si vous utilisez glibc
(à moins avec la version 2.11.1, qui est la version que j'ai utilisée pour tester ceci).
Pour que votre -pg
compilé et exécutable lié à créer des noms différents alors le gmon.out par défaut, juste définir la variable d'environnement GMON_OUT_PREFIX
à une valeur de votre choix et la sortie de profilage sera écrit à [value of your choice].[pid]
où [pid]
est le processus id du processus auquel les données de profilage appartiennent.
En bref, non. Le fichier de profilage créé en exécutant votre programme une fois qu'il a été compilé avec la commande -pg est TOUJOURS appelé gmon.out. Cependant, une fois produit, vous pouvez renommer en toute sécurité à autre chose (par exemple foo.bar) et les analyser plus tard en utilisant la commande:
gprof test.exe foo.bar > analysis.txt
Merci pour votre effort. Puisque ce n'est pas possible, je suis en train de profiler avec cachegrind et valgrind. Cela a fonctionné pour moi. – Emiswelt
Un peu en retard, mais merci beaucoup pour la réponse. Je garderai ça à l'esprit. :) – Emiswelt
Vous devriez vraiment accepter cette réponse, l'autre est simplement faux. – spatz