Ich schreibe Codes in Fortran und C für verschiedene Matrixalgorithmen. Wenn ich meine Codes jedoch mit VTune profiliere, stoße ich normalerweise auf eine Terminologie, die ich nicht vollständig einschätzen kann. Gibt es eine gute Ressource, um das Profiling von Grund auf bis zu einem ziemlich fortgeschrittenen Niveau zu lernen?
Obwohl ich mich darauf freue, numerische Codes zu profilieren, glaube ich nicht (ich könnte mich irren), dass das Profilieren anderer Codes anders ist. Ich möchte ein Tutorial zur Profilerstellung und würde ein (kostenloses) Online-PDF bevorzugen, hätte aber nichts gegen Bücher oder Handbücher.
Ich habe versucht, das Handbuch von VTune zu lesen, aber das ist wie der Versuch, Chinesisch zu lernen, indem ich ein Buch in chinesischer Sprache lese.
Ist VTune der beste Weg? Ich mag eine GUI sehr und da ich Intel MKL verwende, dachte ich, es wäre besser als Valgrind.
Wenn Sie an einer Leistungsanalyse von Parallelcodes interessiert sind, gefällt mir das Buch: Scientific Parallel Computing, Scott Scott, L. Ridgway, Terry Clark, Babak Bagheri .
Auch hier ein paar coolen Folien sind , die in einem Sommerschule Kurs gegeben (PASI. Valparaíso, Chile. Januar 2011) von einem der Autoren wird das Material auf dem Buch basiert.
quelle
Das Tool, das ich ausgiebig für die Profilerstellung verwendet habe, ist valgrind (in Kombination mit der grafischen Oberfläche kcachegrind ). Valgrind ist eine Reihe dynamischer Analysewerkzeuge: Speicherfehlererkennung, Threading-Fehlersuche und Profilerstellung.
Einige Referenzen zu Valgrind:
Leider (abhängig davon, woher Sie kommen :-)) läuft valgrind nicht unter Windows, sondern nur auf Linux- und Darwin-basierten Computern.
quelle