Formato del parametro per visualizzare il grafico delle chiamate per il metodo basato su modelli con gprof?
Domanda
Qual è il formato della riga di comando per visualizzare il grafico delle chiamate di funzione per un metodo in classe con template con gprof?
Per un semplice metodo C lo si specifica come:
gprof -f foo myprogram > gprof.output
Come si specifica il metodo parse
da quanto segue:
template <typename T> class A
{
public:
template <typename X> bool parse(X& x, char*buf)
{ ... lots of code here ...;
}
};
Soluzione 3
Ero alla ricerca del formato effettivo da utilizzare sulla riga di comando. Riesco a vedere i simboli compilati guardando i file generati ma non sono sicuro del formato da utilizzare nella riga di comando. Grazie comunque per tutte le risposte.
Altri suggerimenti
Ecco lo script Python che può analizzare questo: gprof2dot . La pagina ha anche ulteriori riferimenti.
Personalmente, mi piacciono gli Google Performance Tools che possono, tra le altre cose, genera anche direttamente i grafici delle chiamate (tramite graphviz / punto).
Credo che i parametri del modello C ++ e i tipi di arg siano usati all'interno del nome della funzione. Potresti forse usare sed sul file di output del profiler.
Questo strumento può analizzarli anche dal file di output: http : //linux.wareseeker.com/download/gprof2dot.py-0.3.rar/331443