gprof
E59600
gprof is a performance analysis tool that profiles program execution to help developers identify time-consuming functions and optimize their code.
Observed surface forms (2)
| Surface form | Occurrences |
|---|---|
| GNU gprof | 1 |
| GNU gprof manual | 1 |
Statements (49)
| Predicate | Object |
|---|---|
| instanceOf |
performance analysis tool
ⓘ
profiler ⓘ profiling tool ⓘ software development tool ⓘ |
| canMeasure |
number of calls between functions
ⓘ
time spent in descendants of a function ⓘ time spent in each function ⓘ |
| category |
GNU Project
ⓘ
surface form:
GNU Project software
software profiling tools ⓘ |
| commandLineInterface | yes ⓘ |
| developer | GNU Project ⓘ |
| distribution |
included in GNU toolchain
ⓘ
included with many Unix toolchains ⓘ |
| documentation |
gprof
self-linksurface differs
ⓘ
surface form:
GNU gprof manual
|
| input | profiling data file gmon.out ⓘ |
| license | GNU General Public License ⓘ |
| limitation |
cannot easily profile dynamically loaded libraries in some setups
ⓘ
does not handle multi-threaded programs well ⓘ overhead from instrumentation can affect timing ⓘ |
| method |
instrumentation of function calls
ⓘ
statistical sampling of program counter ⓘ |
| output |
call graph profile
ⓘ
flat profile of function execution times ⓘ |
| outputFormat | human-readable text report ⓘ |
| partOf | GNU Binutils ⓘ |
| platform |
BSD systems
ⓘ
GNU/Linux ⓘ Unix-like systems ⓘ macOS (via developer tools or ports) ⓘ |
| primaryUse |
code optimization support
ⓘ
identifying time-consuming functions ⓘ performance profiling of programs ⓘ |
| relatedTo |
GNU Compiler Collection
ⓘ
Valgrind callgrind ⓘ gperftools ⓘ perf (Linux profiler) ⓘ |
| requires |
linking with profiling-enabled runtime libraries
ⓘ
programs compiled with profiling options ⓘ |
| softwareGenre | program analysis software ⓘ |
| supportsLanguage |
C
ⓘ
C++ ⓘ Fortran ⓘ |
| supportsOption |
-A (annotated source)
ⓘ
-b (brief output) ⓘ -p (flat profile only) ⓘ -q (call graph only) ⓘ |
| typicalWorkflowStep |
compile program with -pg option using GCC
ⓘ
run gprof on the executable and gmon.out ⓘ run the compiled program to generate gmon.out ⓘ |
Referenced by (4)
Full triples — surface form annotated when it differs from this entity's canonical label.
this entity surface form:
GNU gprof manual
this entity surface form:
GNU gprof