CHKPT_TASK Class Reference

Implements a task that checkpoints periodically. More...

#include <chkpt_task.h>

List of all members.

Public Member Functions

 CHKPT_TASK (const char *project_name, const char *name, double compute_duration, double message_size, void *data, int num_segments)
 ~CHKPT_TASK ()
void * get_data ()
MSG_error_t execute ()
MSG_error_t cancel ()
const char * get_name ()
void set_cpu_no (int cpu_no)
int get_cpu_no ()
bool is_primary_host (m_host_t host)
void update_project_metrics ()

Public Attributes

string project_name
string task_name
double task_compute_duration
double task_message_size
void * task_data
m_task_t subtask_curr
double subtask_compute_duration
double subtask_message_size
void * subtask_data
int num_segments
int num_segments_remaining
int num_segments_completed
int num_segments_attempts
bool cancelled
bool completed
double wall_start_time
double wall_stop_time
double wall_completion_time
bool first_execution
int cpu_no
double report_deadline


Detailed Description

Implements a task that checkpoints periodically.

Note one cannout use MSG to send or receive a checkpoint task (e.g. we do not implement the equivalent of MSG_task_get_sender, MSG_task_get_source, MSG_process_suspend).


Constructor & Destructor Documentation

CHKPT_TASK::CHKPT_TASK const char *  project_name,
const char *  name,
double  compute_duration,
double  message_size,
void *  data,
int  num_segments
 

CHKPT_TASK::~CHKPT_TASK  ) 
 


Member Function Documentation

MSG_error_t CHKPT_TASK::cancel  ) 
 

if a (sub)task is executing, cancel it.

Returns:
state of chkpt task as an MSG_error_t

MSG_error_t CHKPT_TASK::execute  ) 
 

int CHKPT_TASK::get_cpu_no  ) 
 

void * CHKPT_TASK::get_data  ) 
 

const char * CHKPT_TASK::get_name  ) 
 

bool CHKPT_TASK::is_primary_host m_host_t  host  ) 
 

void CHKPT_TASK::set_cpu_no int  cpu_no  ) 
 

void CHKPT_TASK::update_project_metrics  ) 
 

Assumes that it is only called when a task is completed and wall_completion_time is set


Member Data Documentation

bool CHKPT_TASK::cancelled
 

bool CHKPT_TASK::completed
 

int CHKPT_TASK::cpu_no
 

cpu id that task is executing on

bool CHKPT_TASK::first_execution
 

whether this is the first time we have tried to execute the task

int CHKPT_TASK::num_segments
 

int CHKPT_TASK::num_segments_attempts
 

number of times we've tried to complete segments

int CHKPT_TASK::num_segments_completed
 

int CHKPT_TASK::num_segments_remaining
 

string CHKPT_TASK::project_name
 

double CHKPT_TASK::report_deadline
 

set in RESULT::set_chkpt_task

double CHKPT_TASK::subtask_compute_duration
 

m_task_t CHKPT_TASK::subtask_curr
 

subtask that the host is currently executing

void* CHKPT_TASK::subtask_data
 

double CHKPT_TASK::subtask_message_size
 

double CHKPT_TASK::task_compute_duration
 

void* CHKPT_TASK::task_data
 

double CHKPT_TASK::task_message_size
 

string CHKPT_TASK::task_name
 

double CHKPT_TASK::wall_completion_time
 

completion time, i.e., time elapsed between wall_start_time and wall_stop_time

double CHKPT_TASK::wall_start_time
 

start time according to simulated wall clock time

double CHKPT_TASK::wall_stop_time
 

stop time according to simulated wall clock time


The documentation for this class was generated from the following files:
Generated on Mon Mar 12 16:22:02 2007 for SimBOINC by  doxygen 1.4.6