Difference between revisions of "FAQInstrumentingFortran"
(→Some things to check before you begin) |
|||
Line 11: | Line 11: | ||
<pre> | <pre> | ||
setenv TAU_OPTIONS ‘-optPdtF95Opts=“-R free” -optVerbose ’ | setenv TAU_OPTIONS ‘-optPdtF95Opts=“-R free” -optVerbose ’ | ||
+ | tau_f90.sh foo.f | ||
+ | </pre> | ||
+ | |||
+ | You may also use TAU's new compiler based instrumentation feature that allows the compiler to insert instrumentation that activates TAU's measurement probes. To use this feature please use -optCompInst TAU option as follows: | ||
+ | |||
+ | <pre> | ||
+ | setenv TAU_OPTIONS '-optCompInst -optVerbose' | ||
+ | tau_f90.sh foo.f | ||
+ | </pre> | ||
+ | Compiler based instrumentation does not permit loop level instrumentation. Instrumentation is active at routine level only. You may use TAU's selective instrumentation file to exclude a list of files. Selective instrumentation is not supported by most compilers at the routine level. To use this, please use BEGIN_FILE_EXCLUDE_LIST/END_FILE_EXCLUDE_LIST in the file (say select.tau) and pass it to the compiler using: | ||
+ | <pre> | ||
+ | setenv TAU_OPTIONS '-optCompInst -optTauSelectFile=/path/to/select.tau -optVerbose' | ||
tau_f90.sh foo.f | tau_f90.sh foo.f | ||
</pre> | </pre> |
Latest revision as of 23:30, 15 January 2009
Tips for instrumenting Fortran code with TAU
Some things to check before you begin
- Are you using #define, #ifdef, #endif macros any other preprocessing macros in Fortran source code? If so you will need to use to option -optPreProcess. This option is given to tau_compiler.sh like this:
tau_f90.sh -tau_options=-optPreProcess foo.f
If your Fortran code uses free format in .f files (fixed is default for .f) we need to pass the "-R free" option to the TAU parser. TAU options can be specified either on the command line or as the TAU_OPTIONS environment variable:
setenv TAU_OPTIONS ‘-optPdtF95Opts=“-R free” -optVerbose ’ tau_f90.sh foo.f
You may also use TAU's new compiler based instrumentation feature that allows the compiler to insert instrumentation that activates TAU's measurement probes. To use this feature please use -optCompInst TAU option as follows:
setenv TAU_OPTIONS '-optCompInst -optVerbose' tau_f90.sh foo.f
Compiler based instrumentation does not permit loop level instrumentation. Instrumentation is active at routine level only. You may use TAU's selective instrumentation file to exclude a list of files. Selective instrumentation is not supported by most compilers at the routine level. To use this, please use BEGIN_FILE_EXCLUDE_LIST/END_FILE_EXCLUDE_LIST in the file (say select.tau) and pass it to the compiler using:
setenv TAU_OPTIONS '-optCompInst -optTauSelectFile=/path/to/select.tau -optVerbose' tau_f90.sh foo.f