#include <controlPoints.h>
Public Member Functions | |
controlPointManager () | |
~controlPointManager () | |
void | pup (PUP::er &p) |
controlPointManager (CkMigrateMessage *m) | |
void | loadDataFile () |
Loads the previous run data file. | |
void | writeDataFile () |
Add the current data to allData and output it to a file. | |
void | setCPCallback (CkCallback cb, bool _frameworkShouldAdvancePhase) |
User can register a callback that is called when application should advance to next phase. | |
void | setFrameworkAdvancePhase (bool _frameworkShouldAdvancePhase) |
A user can specify that the framework should advance the phases automatically. Useful for gather performance measurements without modifying a program. | |
void | processControlPoints () |
Called periodically by the runtime to handle the control points Currently called on each PE. | |
bool | controlPointAffectsThisEP (int ep) |
Determine if any control point is known to affect an entry method. | |
bool | controlPointAffectsThisArray (int array) |
Determine if any control point is known to affect a chare array. | |
void | generatePlan () |
Generate a plan (new control point values) once per phase. | |
instrumentedPhase * | currentPhaseData () |
The data for the current phase. | |
instrumentedPhase * | previousPhaseData () |
The data from the previous phase. | |
instrumentedPhase * | twoAgoPhaseData () |
The data from two phases back. | |
void | gotoNextPhase () |
Called by either the application or the Control Point Framework to advance to the next phase. | |
void | setTiming (double time) |
An application uses this to register an instrumented timing for this phase. | |
void | checkForShutdown () |
Check to see if we are in the shutdown process, and handle it appropriately. | |
void | exitIfReady () |
Start shutdown procedures for the controlPoints module(s). | |
void | doExitNow () |
All outstanding operations have completed, so do the shutdown now. First write files to disk, and then call CkExit(). | |
void | writeOutputToDisk () |
Write data to disk (when needed), likely at exit. | |
void | requestMemoryUsage (CkCallback cb) |
Entry method called on all PEs to request memory usage. | |
void | gatherMemoryUsage (CkReductionMsg *msg) |
All processors reduce their memory usages to this method. | |
void | requestIdleTime (CkCallback cb) |
Entry method called on all PEs to request memory usage. | |
void | gatherIdleTime (CkReductionMsg *msg) |
All processors reduce their memory usages in requestIdleTime() to this method. | |
void | requestAll (CkCallback cb) |
Entry method called on all PEs to request Idle, Overhead, and Memory measurements. | |
void | gatherAll (CkReductionMsg *msg) |
All processors reduce their memory usages in requestIdleTime() to this method. | |
Data Fields | |
instrumentedData | allData |
std::map< std::string, std::pair< int, int > > | controlPointSpace |
The lower and upper bounds for each named control point. | |
std::set< std::string > | staticControlPoints |
A set of named control points whose values cannot change within a single run of an application. | |
std::map< std::string, std::set< int > > | affectsPrioritiesEP |
std::map< std::string, std::set< int > > | affectsPrioritiesArray |
std::map< std::string, int > | newControlPoints |
The control points to be used in the next phase. In gotoNextPhase(), these will be used. | |
int | generatedPlanForStep |
simplexScheme | s |
CkCallback | controlPointChangeCallback |
A user supplied callback to call when control point values are to be changed. | |
bool | haveControlPointChangeCallback |
bool | frameworkShouldAdvancePhase |
int | phase_id |
bool | alreadyRequestedMemoryUsage |
bool | alreadyRequestedIdleTime |
bool | alreadyRequestedAll |
bool | exitWhenReady |
Definition at line 699 of file controlPoints.h.
controlPointManager::controlPointManager | ( | CkMigrateMessage * | m | ) | [inline] |
Definition at line 743 of file controlPoints.h.
Definition at line 702 of file controlPoints.h.
Referenced by controlPointManager(), currentPhaseData(), generatePlan(), gotoNextPhase(), loadDataFile(), previousPhaseData(), processControlPoints(), twoAgoPhaseData(), and writeDataFile().
std::map<std::string, std::pair<int,int> > controlPointManager::controlPointSpace |
The lower and upper bounds for each named control point.
Definition at line 705 of file controlPoints.h.
Referenced by controlPoint(), generatePlan(), and processControlPoints().
std::set<std::string> controlPointManager::staticControlPoints |
A set of named control points whose values cannot change within a single run of an application.
Definition at line 708 of file controlPoints.h.
std::map<std::string, std::set<int> > controlPointManager::affectsPrioritiesEP |
Definition at line 711 of file controlPoints.h.
Referenced by controlPointAffectsThisEP(), and processControlPoints().
std::map<std::string, std::set<int> > controlPointManager::affectsPrioritiesArray |
Definition at line 713 of file controlPoints.h.
Referenced by controlPointAffectsThisArray().
std::map<std::string,int> controlPointManager::newControlPoints |
The control points to be used in the next phase. In gotoNextPhase(), these will be used.
Definition at line 717 of file controlPoints.h.
Referenced by generatePlan(), and processControlPoints().
Definition at line 718 of file controlPoints.h.
Referenced by controlPointManager(), generatePlan(), and pup().
Definition at line 720 of file controlPoints.h.
Referenced by currentPhaseData(), generatePlan(), previousPhaseData(), processControlPoints(), and twoAgoPhaseData().
A user supplied callback to call when control point values are to be changed.
Definition at line 724 of file controlPoints.h.
Referenced by processControlPoints(), and setCPCallback().
Definition at line 725 of file controlPoints.h.
Referenced by controlPointManager(), processControlPoints(), pup(), and setCPCallback().
Definition at line 726 of file controlPoints.h.
Referenced by controlPointManager(), processControlPoints(), pup(), setCPCallback(), and setFrameworkAdvancePhase().
Definition at line 728 of file controlPoints.h.
Referenced by controlPoint(), controlPointManager(), generatePlan(), gotoNextPhase(), previousPhaseData(), pup(), and twoAgoPhaseData().
Definition at line 730 of file controlPoints.h.
Referenced by checkForShutdown(), controlPointManager(), exitIfReady(), gatherMemoryUsage(), gotoNextPhase(), and pup().
Definition at line 731 of file controlPoints.h.
Referenced by checkForShutdown(), controlPointManager(), exitIfReady(), gatherIdleTime(), gotoNextPhase(), and pup().
Definition at line 732 of file controlPoints.h.
Referenced by checkForShutdown(), controlPointManager(), exitIfReady(), gatherAll(), gotoNextPhase(), and pup().
Definition at line 734 of file controlPoints.h.
Referenced by checkForShutdown(), controlPointManager(), exitIfReady(), and pup().