The TAU Portable Profiling Package

Compiling the TAU Profiling Library

TAU Profiling Package can be compiled for the default mode (time profiling PROFILE) or for use with SGI Hardware Counters (PROFILECOUNTERS). It can also be compiled to produce a complete trace of times for each function invocation (PROFILECALLS). It can be used to generate statistics such as the standard deviation of the exclusive time spent in each function (PROFILESTATS). To compile the library for one or more of the above options we can compile the library and the profiled application with the following options.

Option Compilation Flags
Default -DPROFILING_ON
SGI Hardware Counters (PROFILECOUNTERS) -DPROFILING_ON -DSGI_HW_COUNTERS
SGI Fast Timers (PROFILE) -DPROFILING_ON -DSGI_TIMERS
Trace each invocation (PROFILECALLS) -DPROFILING_ON -DPROFILE_CALLS
Standard Deviation (PROFILESTATS) -DPROFILING_ON -DPROFILE_STATS
Tulip Portable Timers -DPROFILING_ON -DTULIP_TIMERS
No Runtime Type Information -DPROFILING_ON -DNO_RTTI

It is important to note that these options can be combined- so if we wanted to use standard deviation statistics option with hardware counters the flags would be -DPROFILING_ON -DPROFILE_STATS -DSGI_HW_COUNTERS . Also, POOMA users can specify the options specified in parenthesis during the conf stage while building the library and do not need to specify any compilation flags.