Offline Class Reference

Offline inherates the basic class Schedule.Class for all Offline Checkpointing schedules. More...

#include <revolve.h>

Inheritance diagram for Offline:

Schedule List of all members.

Public Member Functions

 Offline (int st, int sn, Checkpoint *c, ostream &str)
 This is the standard constructor that will be called if the number of time steps is a-priori known.
 Offline (int sn, Checkpoint *c, Online *o, int f, ostream &str)
 This constructor will be called for the optimal Reversal of a schedule resulting from Online Checkpointing.
 Offline (Schedule *o, ostream &str)
 This constructor does not do anything and will usually not be called.
 Offline (Offline &o)
 CopyConstructor.
ACTION::action revolve (ostream &str)
 Since REVOLVE involves only a few integer operations its run-time is truly negligible within any nontrivial application.
int get_check ()
int get_capo ()
int get_fine ()
int get_snaps ()
int get_commands ()
int get_steps ()
bool get_online ()
vector< int > get_num_ch ()
int get_num_ch (int i)
void set_fine (int f)
void set_capo (int c)
 ~Offline ()

Detailed Description

Offline inherates the basic class Schedule.Class for all Offline Checkpointing schedules.

This class manages all Offline Checkpointing schedules. This class allows optimal Offline Checkpointing strategies if the number of time steps is a-priori known. This class also manages the optimal reversal of schedules resulting from Online Checkpointing

Definition at line 356 of file revolve.h.


Constructor & Destructor Documentation

Offline::Offline ( int  st,
int  sn,
Checkpoint c,
ostream &  str 
)

This is the standard constructor that will be called if the number of time steps is a-priori known.

Offline::Offline ( int  sn,
Checkpoint c,
Online o,
int  f,
ostream &  str 
)

This constructor will be called for the optimal Reversal of a schedule resulting from Online Checkpointing.

Offline::Offline ( Schedule o,
ostream &  str 
)

This constructor does not do anything and will usually not be called.

Offline::Offline ( Offline o  ) 

CopyConstructor.

Offline::~Offline (  ) 

Definition at line 387 of file revolve.h.


Member Function Documentation

ACTION::action Offline::revolve ( ostream &  str  )  [virtual]

Since REVOLVE involves only a few integer operations its run-time is truly negligible within any nontrivial application.

The parameter SNAPS is selected by the user (possibly with the help of the routines EXPENSE and ADJUST described below ) and remains unchanged throughout. The pair (CAPO,FINE) always represents the initial and final state of the subsequence of time steps currently being traversed backwards. The conditions CHECK >= -1 and CAPO <= FINE are necessary and sufficient for a regular response of REVOLVE. If either condition is violated the value 'error' is returned. When CHECK =-1 and CAPO = FINE then 'terminate' is returned as action value. This combination necessarily arises after a sufficiently large number of calls to REVOLVE, which depends only on the initial difference FINE-CAPO. The last parameter INFO determines how much information about the actions performed will be printed. When INFO =0 no information is sent to standard output. When INFO > 0 REVOLVE produces an output that contains a prediction of the number of forward steps and of the factor by which the execution will slow down. When an error occurs, the return value of INFO contains information about the reason: INFO = 10: number of checkpoints stored exceeds CHECKUP, increase constant CHECKUP and recompile. INFO = 11: number of checkpoints stored exceeds SNAPS, ensure SNAPS greater than 0 and increase initial FINE. INFO = 12: error occurs in NUMFORW. INFO = 13: enhancement of FINE, SNAPS checkpoints stored,SNAPS must be increased. INFO = 14: number of SNAPS exceeds CHECKUP, increase constant CHECKUP and recompile. INFO = 15: number of REPS exceeds REPSUP, increase constant REPSUP and recompile.

Implements Schedule.

int Offline::get_check (  )  [virtual]

Implements Schedule.

Definition at line 373 of file revolve.h.

int Offline::get_capo (  )  [virtual]

Implements Schedule.

Definition at line 374 of file revolve.h.

int Offline::get_fine (  )  [virtual]

Implements Schedule.

Definition at line 375 of file revolve.h.

int Offline::get_snaps (  ) 

Reimplemented from Schedule.

Definition at line 376 of file revolve.h.

References Schedule::snaps.

int Offline::get_commands (  ) 

Reimplemented from Schedule.

Definition at line 377 of file revolve.h.

References Schedule::checkpoint, and Checkpoint::commands.

int Offline::get_steps (  ) 

Definition at line 378 of file revolve.h.

bool Offline::get_online (  ) 

Definition at line 379 of file revolve.h.

vector<int> Offline::get_num_ch (  ) 

Definition at line 380 of file revolve.h.

int Offline::get_num_ch ( int  i  ) 

Definition at line 381 of file revolve.h.

void Offline::set_fine ( int  f  )  [virtual]

Implements Schedule.

Definition at line 383 of file revolve.h.

void Offline::set_capo ( int  c  )  [virtual]

Implements Schedule.

Definition at line 384 of file revolve.h.


The documentation for this class was generated from the following file:
Generated on 5 Jan 2017 for IWAVECORE by  doxygen 1.4.7