Ich machte ein R-Paket mit Rcpp, wo ganze Simulationen in C++ ausgeführt werden und die Ergebnisse in R analysiert werden. Jetzt muss ich meine Funktionen, so dass ich sie optimieren kann, aber R Profiler können nicht unterscheiden, was in den C++ - Funktionen passiert, und ich weiß nicht, wie man C++ Profiler ausführt, wenn die Funktionen nur innerhalb von R ausgeführt werden können.Wie Profil Rcpp Code (auf Linux)
Bis jetzt habe ich einige Vorschläge gefunden, um gperftools (questions und tutorials) aber die Guides sind unvollständig (vielleicht nehmen sie ein Wissen an, das mir fehlt?), Haben fehlende Links und ich renne immer wieder in die Wände. Daher diese Frage. Hier ist, wo ich bin an:
- Install gperftools (I installiert von extra/gperftools mit Pacman)
- umfassen gperftools/profiler.h auf der C++ Header
- hinzufügen ProfilerStart ("myprof.log") und ProfilerStop() in der C++ Code um, was ich will zum Profil
- Compile mit -lprofiler
- Run "$ CPUPROFILE =" myprof.log "R -f myscript.R"
Die aktuelle Wand ist gcc sagt mir "Undefined Symbol: ProfilerStart", also denke ich, dass etwas mit der Verknüpfung nicht stimmt?
Nun, es für mich in der Vergangenheit gearbeitet wie in einigen der älteren slidedecks auf meiner Seite gezeigt ... –