Provided by: tau_2.16.4-1.5_amd64 bug

NAME

       TAU_MAPPING_PROFILE - Profiles a block based on a mapping

SYNOPSIS

       C/C++:

       TAU_MAPPING_PROFILE(FunctionInfo *FuncIdVar);

DESCRIPTION

       The TAU_MAPPING_PROFILE macro measures the time and attributes it to the statement mapped
       in TAU_MAPPING macro. It takes as its argument the identifier of the higher level
       statement that is stored using TAU_MAPPING_OBJECT and linked to the statement using
       TAU_MAPPING_LINK macros.  TAU_MAPPING_PROFILE measures the time spent in the entire block
       in which it is invoked. For example, if the time spent in the run method of the class does
       work that must be associated with the higher-level array expression, then, we can
       instrument it as follows:

EXAMPLE

       C/C++ :

       // Evaluate the kernel
       // Just tell an InlineEvaluator to do it.

       template<class LHS,class Op,class RHS,class EvalTag>
       void
       ExpressionKernel<LHS,Op,RHS,EvalTag>::run() {
         TAU_MAPPING_PROFILE(TauMapFI)

         // Just evaluate the expression.
         KernelEvaluator<EvalTag>().evalate(lhs_m,op_m,rhs_m);
         // we could release the locks here or in dtor
       }

SEE ALSO

       TAU_MAPPING_CREATE(3), TAU_MAPPING_LINK(3), TAU_MAPPING_OBJECT(3)

                                            08/31/2005                     TAU_MAPPING_PROFILE(3)