TAU_MAPPING_OBJECT(3)

TAU_MAPPING_OBJECT3

Declares a mapping object

Usage

C/C++:

TAU_MAPPING_OBJECT(FunctionInfo FuncIdVar);

Overview

To create storage for an identifier associated with a higher level statement that is mapped using TAU_MAPPING, we use the TAU_MAPPING_OBJECT macro. For example, in the TAU_MAPPING example, the array expressions are created into objects of a class ExpressionKernel, and each statement is an object that is an instance of this class. To embed the identity of the statement we store the mapping object in a data field in this class. This is shown below:

Examples

C/C++ :

template<class LHS,class Op,class RHS,class EvalTag>
class ExpressionKernel : public Pooma::Iterate_t {
  public:
    typedef ExpressionKernel<LHS,Op,RHS,EvalTag> This_t;
    //
    // Construct from an Expr.
    // Build the kernel that will evaluate the expression on the 
    // given domain.
    // Acquire locks on the data referred to by the expression.
    //
    ExpressionKernel(const LHS&,const Op&,const RHS&,
    Pooma::Scheduler_t&);
    virtual ~ExpressionKernel();
    // Do the loop.
    virtual void run();
  private:
    // The expression we will evaluate.
    LHS lhs_m;
    Op  op_m;
    RHS rhs_m;
    TAU_MAPPING_OBJECT(TauMapFI)
};

Releases

Unchanged in 5 releases since Debian 4.0 (Etch).

  1. 4.0–9

From tau 2.17.3.1.dfsg-4.2 in Debian 9 (Stretch). Parsed by carta from the page's man source.