PPL Logo

TraceControlPoints Class Reference
[Automatic Performance Tuning and Steering Framework]

An instrumentation module making use of the tracing framework hooks provided in Charm++. More...

#include <trace-controlPoints.h>

Inheritance diagram for TraceControlPoints:

Inheritance graph
[legend]
Collaboration diagram for TraceControlPoints:

Collaboration graph
[legend]

Public Member Functions

 TraceControlPoints (char **argv)
void traceBegin (void)
void traceEnd (void)
void userEvent (int eventID)
void userBracketEvent (int eventID, double bt, double et)
void creation (envelope *, int epIdx, int num=1)
void creationMulticast (envelope *, int epIdx, int num=1, const int *pelist=NULL)
void creationDone (int num=1)
void messageRecv (char *env, int pe)
void beginExecute (envelope *)
void beginExecute (CmiObjId *tid)
void beginExecute (int event, int msgType, int ep, int srcPe, int ml, CmiObjId *idx)
void endExecute (void)
void beginIdle (double curWallTime)
void endIdle (double curWallTime)
void beginComputation (void)
void endComputation (void)
void malloc (void *where, int size, void **stack, int stackSize)
void free (void *where, int size)
void traceClose ()
void resetTimings ()
 reset the idle time and entry method execution time accumulators
void resetAll ()
 Reset the idle, overhead, and memory measurements.
double idleRatio ()
 Fraction of the time spent idle since resetting the counters.
double untracedTime ()
double overheadRatio ()
 Fraction of time spent as overhead since resetting the counters.
double memoryUsageMB ()
 Highest memory usage (in MB) value we've seen since resetting the counters.
double grainSize ()
 Determine the average grain size since last reset of counters.
double bytesPerEntry ()

Data Fields

int b1
int b2
int b3
long b2mlen
long b3mlen
int nesting_level

Private Attributes

double lastBeginExecuteTime
int lastbeginMessageSize
double lastBeginIdle
 The start of the idle region.
double totalUntracedTime
 Amount of time spent so far in untraced regions.
double whenStoppedTracing
 When tracing was suspended (0 if not currently suspended).
double totalEntryMethodTime
 The amount of time spent executing entry methods since we last reset the counters.
double totalIdleTime
 The amount of time spent idle since we last reset the counters.
double memUsage
 The highest seen memory usage since we last reset the counters.
long totalEntryMethodInvocations
 The number of entry method invocations since we last reset the counters.
double lastResetTime
 The time we last rest the counters.

Detailed Description

An instrumentation module making use of the tracing framework hooks provided in Charm++.

It is used by the control point framework to monitor idle time.

Only the more common hooks are listened to in this module.

Definition at line 25 of file trace-controlPoints.h.


Member Function Documentation

double TraceControlPoints::idleRatio (  )  [inline]

Fraction of the time spent idle since resetting the counters.

Definition at line 126 of file trace-controlPoints.h.

References CmiWallTimer(), lastResetTime, PUP::t, totalIdleTime, and untracedTime().

Referenced by controlPointManager::requestAll(), and controlPointManager::requestIdleTime().

Here is the call graph for this function:

Here is the caller graph for this function:

double TraceControlPoints::untracedTime (  )  [inline]

Definition at line 131 of file trace-controlPoints.h.

References CmiWallTimer(), totalUntracedTime, and whenStoppedTracing.

Referenced by idleRatio(), and overheadRatio().

Here is the call graph for this function:

Here is the caller graph for this function:

double TraceControlPoints::overheadRatio (  )  [inline]

Fraction of time spent as overhead since resetting the counters.

Definition at line 141 of file trace-controlPoints.h.

References CmiWallTimer(), lastResetTime, PUP::t, totalEntryMethodTime, totalIdleTime, and untracedTime().

Referenced by controlPointManager::requestAll().

Here is the call graph for this function:

Here is the caller graph for this function:

double TraceControlPoints::memoryUsageMB (  )  [inline]

Highest memory usage (in MB) value we've seen since resetting the counters.

Definition at line 147 of file trace-controlPoints.h.

References memUsage.

Referenced by controlPointManager::requestAll().

Here is the caller graph for this function:

double TraceControlPoints::grainSize (  )  [inline]

Determine the average grain size since last reset of counters.

Definition at line 152 of file trace-controlPoints.h.

References totalEntryMethodInvocations, and totalEntryMethodTime.

Referenced by controlPointManager::requestAll().

Here is the caller graph for this function:

double TraceControlPoints::bytesPerEntry (  )  [inline]

Definition at line 156 of file trace-controlPoints.h.

References b2, b2mlen, b3, and b3mlen.


Field Documentation

Definition at line 28 of file trace-controlPoints.h.

Referenced by beginExecute(), and endExecute().

Definition at line 29 of file trace-controlPoints.h.

Referenced by beginExecute().

The start of the idle region.

Definition at line 32 of file trace-controlPoints.h.

Referenced by beginIdle(), and endIdle().

Amount of time spent so far in untraced regions.

Definition at line 35 of file trace-controlPoints.h.

Referenced by resetAll(), resetTimings(), traceBegin(), and untracedTime().

When tracing was suspended (0 if not currently suspended).

Definition at line 38 of file trace-controlPoints.h.

Referenced by resetAll(), resetTimings(), traceBegin(), TraceControlPoints(), traceEnd(), and untracedTime().

The amount of time spent executing entry methods since we last reset the counters.

Definition at line 41 of file trace-controlPoints.h.

Referenced by endExecute(), grainSize(), overheadRatio(), resetAll(), and resetTimings().

The amount of time spent idle since we last reset the counters.

Definition at line 44 of file trace-controlPoints.h.

Referenced by endIdle(), idleRatio(), overheadRatio(), resetAll(), and resetTimings().

double TraceControlPoints::memUsage [private]

The highest seen memory usage since we last reset the counters.

Definition at line 47 of file trace-controlPoints.h.

Referenced by beginIdle(), endExecute(), malloc(), memoryUsageMB(), and resetAll().

The number of entry method invocations since we last reset the counters.

Definition at line 50 of file trace-controlPoints.h.

Referenced by endExecute(), grainSize(), resetAll(), and resetTimings().

The time we last rest the counters.

Definition at line 54 of file trace-controlPoints.h.

Referenced by idleRatio(), overheadRatio(), resetAll(), and resetTimings().

Definition at line 57 of file trace-controlPoints.h.

Referenced by beginExecute(), and TraceControlPoints().

Definition at line 62 of file trace-controlPoints.h.

Referenced by beginExecute(), endExecute(), and TraceControlPoints().


The documentation for this class was generated from the following files:

Generated on Mon Sep 21 08:31:11 2020 for Charm++ by  doxygen 1.5.5