J'utilise perftools de google (http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html) pour le profilage CPU - c'est un outil merveilleux qui m'a permis d'effectuer de nombreuses améliorations de temps CPU sur mon application. Malheureusement, je suis arrivé au point que le code est encore un peu lent, et lorsqu'il est compilé en utilisant le niveau d'optimisation -3 de g ++, tout ce que je sais, c'est qu'une fonction spécifique est lente, mais pas les aspects qui sont lents .C++ profilage/optimisation: comment obtenir une meilleure granularité de profilage dans une fonction optimisée
Si je supprime le drapeau -O3, alors les parties non optimisées du programme dépassent cette fonction, et je n'obtiens pas beaucoup de clarté dans les parties réelles de la fonction qui sont lentes. Si je laisse le drapeau -O3 dans, alors les parties lentes de la fonction sont inline, et je ne peux pas déterminer quelles parties de la fonction sont lentes.
Des suggestions? Merci de votre aide!
Je ne peux pas parler pour CodeAnalyst, mais oprofile est incroyable! la commande opannotate m'a donné l'annotation de la ligne source comme vous l'avez décrit. Merci! – Adam
CodeAnalyst est une interface graphique sur une version spécialisée d'oprofile. Vous pouvez également utiliser CodeAnalyst sous Linux. – Carlos