This section provides some examples for using the er_print command.Example 5-8 Show Summary of How Time Is Spent in Functions
er_print -functions test.1.erExample 5-9 Show Caller-Callee Relationships
er_print -callers-callees test.1.erExample 5-10 Show Which Source Lines Are Hot
Source-line information assumes the code was compiled and linked with -g. Append a trailing underscore to the function name for Fortran functions and routines. The 1 after the function name is used to distinguish between multiple instances of myfunction.
er_print -source myfunction 1 test.1.erExample 5-11 Filter Functions Named myfunc From the User Function Stack:
er_print -filters 'FNAME("myfunc") SOME IN USTACK' -functions test.1.erExample 5-12 Generate Output Similar to gprof
The following example generates a gprof-like list from an experiment. The output is a file named er_print.out which lists the top 100 functions, followed by caller-callee data sorted by attributed user time for each.
er_print -outfile er_print.out -metrics e.%user -sort e.user \ -limit 100 -func -callers-callees test.1.er
You can also simplify this example into the following independent commands. However, keep in mind that each call to er_print in a large experiment or application can be time intensive.
er_print -metrics e.%user -limit 100 -functions test.1.er
er_print -metrics e.%user -callers-callees test.1.erExample 5-13 Show Only the Compiler Commentary
You do not have to run your program in order to use this command.
er_src -myfile.oExample 5-14 Use Wall-Clock Profiling to List Functions and Callers-Callees
er_print -metrics ei.%wall -functions test.1.er
er_print -metrics aei.%wall -callers-callees test.1.erExample 5-15 Run a Script Containing er_print Commands
er_print -script myscriptfile test.1.er
The myscriptfile script contains er_print commands. A sample of the script file contents follows:
## myscriptfile ## Send script output to standard output outfile - ## Display descriptive information about the experiments header ## Write out the sample data for all experiments overview ## Write out execution statistics, aggregated over ## the current sample set for all experiments statistics ## List functions functions ## Display status and names of available load objects object_list ## Write out annotated disassembly code for systime, ## to file disasm.out outfile disasm.out disasm systime ## Write out annotated source code for synprog.c ## to file source.out outfile source.out source synprog.c ## Terminate processing of the script quit