Difference between revisions of "Gprof Tutorial"
Jump to navigation
Jump to search
Line 80: | Line 80: | ||
{{hidden begin | {{hidden begin | ||
− | |title = 1. What | + | |title = 1. What is a call graph? |
}} | }} | ||
<quiz display=simple> | <quiz display=simple> | ||
{ | { | ||
|type="()"} | |type="()"} | ||
− | - | + | - |
− | || | + | || An android app to show incoming callers |
− | + | + | + |
− | || | + | || A hierarchy diagram of function calls in a given profile |
− | - | + | - |
− | || | + | || Instructions of how to call for help during emergencies |
+ | </quiz> | ||
+ | {{hidden end}} | ||
+ | |||
+ | {{hidden begin | ||
+ | |title = 2. How do you generate a callgraph of a gprof profile? | ||
+ | }} | ||
+ | <quiz display=simple> | ||
+ | { | ||
+ | |type="()"} | ||
+ | - | ||
+ | || gprof --call-graph | ||
+ | - | ||
+ | || gprof | ||
+ | + | ||
+ | || gprof --graph | ||
+ | </quiz> | ||
+ | {{hidden end}} | ||
+ | |||
+ | {{hidden begin | ||
+ | |title = 3. What is gprof2dot? | ||
+ | <quiz display=simple> | ||
+ | { | ||
+ | |type="()"} | ||
+ | + | ||
+ | || Third party script for call graph visualization via the "dot" library | ||
+ | - | ||
+ | || Gprof feature to export profiles as a pdf | ||
+ | - | ||
+ | || A fork of the beta version of gprof2 | ||
+ | </quiz> | ||
+ | {{hidden end}} | ||
+ | |||
+ | {{hidden begin | ||
+ | |title = 4. Does gprof work with MPI applications? | ||
+ | <quiz display=simple> | ||
+ | { | ||
+ | |type="()"} | ||
+ | - | ||
+ | || No, gprof only works with sequential applications | ||
+ | - | ||
+ | || Yes, parallel profiling is the main use case of gprof | ||
+ | + | ||
+ | || Yes, but gprof cannot differentiate between individual threads/processes | ||
+ | </quiz> | ||
+ | {{hidden end}} | ||
+ | |||
+ | {{hidden begin | ||
+ | |title = 5. How much overhead does gprof produce? | ||
+ | <quiz display=simple> | ||
+ | { | ||
+ | |type="()"} | ||
+ | - | ||
+ | || None | ||
+ | + | ||
+ | || Little | ||
+ | - | ||
+ | || Much | ||
</quiz> | </quiz> | ||
{{hidden end}} | {{hidden end}} |
Revision as of 12:56, 2 November 2020
HPC.NRW | |
---|---|
Associated Pages | |
+ | This is an #HPC.NRW course |
HPC Courses | |
1. | Introduction to Linux in HPC |
2. | Gprof Tutorial |
3. | OpenMP in Small Bites
|
Gprof is a free and easy-to-use profiler.
Gprof Introduction + Pascal Example
Quiz
C++ + Fortran Examples
Show gprof in real world examples and introduce call graph.
Quiz
{{hidden begin |title = 3. What is gprof2dot?
{{hidden begin |title = 4. Does gprof work with MPI applications?
{{hidden begin |title = 5. How much overhead does gprof produce?