TAU_MAPPING_PROFILE_TIMER

Langue: en

Version: 08/31/2005 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

TAU_MAPPING_PROFILE_TIMER - Declares a mapping timer

SYNOPSIS

C/C++:

TAU_MAPPING_PROFILE_TIMER(Profiler timer, FunctionInfo *FuncIdVar);

DESCRIPTION

TAU_MAPPING_PROFILE_TIMER enables timing of individual statements, instead of complete blocks. It will attribute the time to a higher-level statement. The second argument is the identifier of the statement that is obtained after TAU_MAPPING_OBJECT and TAU_MAPPING_LINK have executed. The timer argument in this macro is any variable that is used subsequently to start and stop the timer.

EXAMPLE

C/C++ :

 template<class LHS,class Op,class RHS,class EvalTag>
 void
 ExpressionKernel<LHS,Op,RHS,EvalTag>::run() {
   TAU_MAPPING_PROFILE_TIMER(timer, TauMapFI);
   printf("ExpressionKernel::run() this = 4854\n", this);
   // Just evaluate the expression.
   
   TAU_MAPPING_PROFILE_START(timer);
   KernelEvaluator<EvalTag>().evaluate(lhs_m, op_m, rhs_m);
   TAU_MAPPING_PROFILE_STOP();
   // we could release the locks here instead of in the dtor.
 }
     
 

SEE ALSO

TAU_MAPPING_LINK(3), TAU_MAPPING_OBJECT(3), TAU_MAPPING_PROFILE_START(3), TAU_MAPPING_PROFILE_STOP(3)