#include <SSampleGen.h>
Public Types | |
enum | ErrorCode { NOERROR, NUMMACHLOW, UNKNOWNENV, MESHSIZELOW, UNKNOWNTOPO, UNKNOWNPREC, NUMJOBSLOW } |
Public Methods | |
SSampleGen () | |
~SSampleGen () | |
void | setMachEnvironment (const leda_string &envClassifier) |
const leda_string & | getMachEnvironment () const |
void | setMachNumOfMachines (int numMach) |
int | getMachNumOfMachines () const |
void | setMachTopology (const leda_string &topoClassifier, int meshW=-1, int meshH=-1) |
const leda_string & | getMachTopology (int &retMeshW, int &retMeshH) const |
void | setJobNumOfJobs (int numJobs) |
int | getJobNumOfJobs () const |
void | setJobNumOfMsgs (int numMsgs) |
int | getJobNumOfMsgs () const |
void | setProcTimeDist (SProbabilityDist::Type type, double lower, double upper) |
void | setRelTimeDist (SProbabilityDist *pDist) |
SProbabilityDist::Type | getJobProcTimeDist () const |
void | setMsgDist (bool zipf) |
void | setPrecRelation (const leda_string &precRelation) |
const leda_string & | getPrecRelation () const |
STaskSystem * | sample () |
void | reset () |
ErrorCode | getError () const |
void | setRandProcTimes (bool set) |
void | setRandRelTimes (bool set) |
|
Error codes: NOERROR ( no error occured ) , NUMMACHLOW ( number of machines was < 1 ) , UNKNOWNENV ( requested unknown environment ) , MESHSIZELOW ( width or height of mesh topology was < 1 ) , UNKNOWNTOPO ( requested unknown topology ) , UNKNOWNPREC ( requested unknown precedence relation ) , NUMJOBSLOW ( number of jobs is < 1 ) |
|
Constructor |
|
Destructor. |
|
If sample() succeeded getError() will return NOERROR, otherwise the error code explains why sample() failed.
|
|
Get number of jobs. |
|
Get number of messages. |
|
Get type of probability distribution |
|
Get the current classifier for the environment. |
|
Get the current number of machines. |
|
Get current topology classifier
|
|
Get classifier of precedence relation. |
|
Reset to default values. |
|
Create a sample tasksystem based on the parameters that you have set before. You must have set at least the number of machines, the type of environment and the number of jobs. If you did not specify the topology "line" is assumed. If you did not specify the kind of precedence relation, "dag" is assumed. If you did not set the probability distribution for the processing times of jobs, "uniform" with bound [1;1] is assumed. If you have set not enough parameters or a tasksystem could not be generated with the specified parameters, it doesn't sample a tasksystem and returns NULL. You can get additional information, why sample() failed with calling getError(). Note: The generator does not own the tasksytem, i.e. you have to destroy it yourself, if sample() succeeds.
|
|
Set number of jobs.
|
|
Set number of messages, only for broadcast!
|
|
Set environment of machines.
|
|
Set number of machines.
|
|
Set topology of machines.
|
|
Set probability distribution for the messages (which msg is requested with which prob.)
|
|
Set classifier of precedence relation.
|
|
Set probability distribution for relative processing times for all jobs. |
|
No descriptions |
|
No descriptions |
|
Distribution for the release times |