class MWStatistics

This class serves as a holder for worker classes before they go to die

Public Methods

void gather( void* )
Literally, take the stats from this worker and store them in the stats class
void get_stats(double *average_bench, double *equivalent_bench, double *min_bench, double *max_bench, double *av_present_workers, double *av_nonsusp_workers, double *av_active_workers, double *equi_pool_performance, double *equi_run_time, double *parallel_performance, double *wall_time, MWList *workerlist )
This function is just like makestats(), except it return the relative statistics information to the caller
void makestats()
This method is called at the end of a run
MWStatistics()
Default constructor
void read_checkpoint( FILE *cfp )
Read in stats information across the checkpoint
void update_best_bench_results( double bres )
Everytime we get a new bench factor, we update the max and min ones if necessary
void write_checkpoint( FILE *cfp, MWList *wlist )
We find that we should save stats across checkpoints
~MWStatistics()
Destructor...

Private Fields

double* cputimes
Array of times holding the CPU times of the workerIDs
double* susptimes
Array of times that the workerIDs have been suspended
double* uptimes
Array of times that the workerIDs have been "up"
double* workingtimes
Array of times that the workerIDs have been working

Private Methods

int get_max_vid()
What is the maximum "virtuid ID" that we ever assigned to a worker
double mean( double *array, int length )
Computes the mean of an array of number.
double var( double *array, int length, int mean )
Computes the variance of an array of numbers (given the mean, to avoid "double processing" the list -- which you don't need to do anyway, but Mike wrote this function)

Private

Normalized Statistics. MW computes "normalized" statistics
double max_bench_result
Min benchmark result -- the "slowest" machine we ever had
double min_bench_result
Max benchmark result -- the "faster" machine we ever had
double* sumbenchmark
The sum of benchmark factors for this vid
int* numbenchmark
The number of benchmar factors for this vid

Documentation

This class serves as a holder for worker classes before they go to die. It holds the workers until a makestats() call is made, at which point it generates some statistics, given the workers.
MWStatistics()
Default constructor

~MWStatistics()
Destructor...

void gather( void* )
Literally, take the stats from this worker and store them in the stats class. This is done when the worker dies and during a checkpoint.

void makestats()
This method is called at the end of a run. It prints out some statistical information on that run.

void get_stats(double *average_bench, double *equivalent_bench, double *min_bench, double *max_bench, double *av_present_workers, double *av_nonsusp_workers, double *av_active_workers, double *equi_pool_performance, double *equi_run_time, double *parallel_performance, double *wall_time, MWList *workerlist )
This function is just like makestats(), except it return the relative statistics information to the caller

void update_best_bench_results( double bres )
Everytime we get a new bench factor, we update the max and min ones if necessary

void write_checkpoint( FILE *cfp, MWList *wlist )
We find that we should save stats across checkpoints. Here we're given the ckpt FILE* and the list of running workers. Basically, we write out the sum of the old stats we've got plus the stats of the running workers.

void read_checkpoint( FILE *cfp )
Read in stats information across the checkpoint

double* uptimes
Array of times that the workerIDs have been "up"

double* workingtimes
Array of times that the workerIDs have been working

double* cputimes
Array of times holding the CPU times of the workerIDs

double* susptimes
Array of times that the workerIDs have been suspended

Normalized Statistics. MW computes "normalized" statistics
about the runs performance based on the relative speed of the machines that the user obtained during the course of the run.

double max_bench_result
Min benchmark result -- the "slowest" machine we ever had

double min_bench_result
Max benchmark result -- the "faster" machine we ever had

double* sumbenchmark
The sum of benchmark factors for this vid

int* numbenchmark
The number of benchmar factors for this vid

double mean( double *array, int length )
Computes the mean of an array of number.

double var( double *array, int length, int mean )
Computes the variance of an array of numbers (given the mean, to avoid "double processing" the list -- which you don't need to do anyway, but Mike wrote this function)

int get_max_vid()
What is the maximum "virtuid ID" that we ever assigned to a worker. This amounts to asking how many workers did we ever have in ALL states at any one time during the course of the run.


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de