|
schedulers
1.0.0
|
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>#include <string>#include <iostream>#include <pelib/SandersSpeck.hpp>#include <pelib/AmplSolver.hpp>#include <pelib/Schedule.hpp>#include <pelib/Scalar.hpp>#include <pelib/Vector.hpp>#include <pelib/Matrix.hpp>#include <pelib/Set.hpp>#include <pelib/Task.hpp>#include <pelib/Link.hpp>#include <pelib/Taskgraph.hpp>#include <pelib/Platform.hpp>#include <pelib/CastException.hpp>#include <pelib/ParseException.hpp>#include <pelib/AmplOutput.hpp>#include <pelib/PelibException.hpp>
Go to the source code of this file.
Classes | |
| struct | task |
| struct | taskset |
| struct | taskparams |
| struct | schedule |
| struct | etable |
Defines | |
| #define | debug(var) cout << "[" << __FILE__ << ":" << __FUNCTION__ << ":" << __LINE__ << "] " << #var << " = \"" << (var) << "\"" << endl; |
| #define | LEN 100 |
| #define | TAUTHRESHOLD 0.0001 |
| #define | MINFACT 0.0001 |
| #define | MAX_DOUBLE pow(2.0,50.0) |
| #define | THRESHOLD 0.000001 |
| #define | printf_d(expr) fprintf(stderr, "[%s:%s:%d] %s = %d\n", __FILE__, __FUNCTION__, __LINE__, #expr, (int)expr); |
| #define | printf_lf(expr) fprintf(stderr, "[%s:%s:%d] %s = %lf\n", __FILE__, __FUNCTION__, __LINE__, #expr, (double)expr); |
Typedefs | |
| typedef struct task | Task |
| typedef struct taskset | Taskset |
| typedef struct taskparams | Taskparams |
| typedef struct schedule | Schedule |
| typedef struct etable | ETable |
Functions | |
| double | taskload (Task *t) |
| double | taskhtab (Task *t, int p) |
| void | inittaskset (Taskset *ts, int n, char *name, int maxcores) |
| double | g (int i) |
| double | efficiency (int i, int maxwidth) |
| void | computehtab (Task *t, int maxcores) |
| void | addtasktotaskset (Taskset *ts, int id, double work, int maxwidth, char *name) |
| void | deinittaskset (Taskset *ts) |
| deinit a taskset | |
| void | copytaskset (Taskset *trg, Taskset *src, char *name) |
| void | readinput (Taskset *ts, const pelib::Taskgraph &tg, const pelib::Platform &arch) |
| char * | tasksetname (Taskset *ts) |
| int | tssize (Taskset *ts) |
| Task * | gettask (Taskset *ts, int i) |
| return pointer to i-th task of a taskset | |
| void | printtask (Task *t) |
| void | printtaskset (Taskset *ts) |
| double | etau (Task *t, int p, double tau, double M) |
| void | initetable (ETable *et, Taskset *ts, int cores) |
| void | deinitetable (ETable *et) |
| void | computeetable (ETable *et, Taskset *ts, int cores, double M) |
| void | printetable (ETable *et) |
| void | computeinitialc (Taskset *ts, ETable *et, double *clp, double *cup, double M) |
| double | invertefunction (Taskset *ts, ETable *et, int i, double c, double cl, double cu, int *bendpointsleftptr, double M) |
| int | checktoomany (Taskset *ts, ETable *et, double c, double cl, double cu, int *bendpointsleftptr, double M) |
| double | computetaskenergy (Task *t, int pistar, double taui, double deadline, double lalpha) |
| double | computeoptc (Taskset *ts, ETable *et, int p, double M, double minFreq) |
| const pelib::Schedule * | pelib_schedule (const pelib::Taskgraph &tg, const pelib::Platform &pt, size_t argc, char **argv, std::map< const string, double > &statistics) |
| string | pelib_description (size_t argc, char **argv) |
| void | pelib_delete (pelib::Schedule *sched) |
Variables | |
| double | alpha |
| const long long int | nsec_in_sec = 1000000000 |
| #define debug | ( | var | ) | cout << "[" << __FILE__ << ":" << __FUNCTION__ << ":" << __LINE__ << "] " << #var << " = \"" << (var) << "\"" << endl; |
Definition at line 34 of file SandersSpeck.cpp.
| #define LEN 100 |
Definition at line 36 of file SandersSpeck.cpp.
| #define MAX_DOUBLE pow(2.0,50.0) |
Definition at line 42 of file SandersSpeck.cpp.
| #define MINFACT 0.0001 |
Definition at line 39 of file SandersSpeck.cpp.
| #define printf_d | ( | expr | ) | fprintf(stderr, "[%s:%s:%d] %s = %d\n", __FILE__, __FUNCTION__, __LINE__, #expr, (int)expr); |
Definition at line 250 of file SandersSpeck.cpp.
| #define printf_lf | ( | expr | ) | fprintf(stderr, "[%s:%s:%d] %s = %lf\n", __FILE__, __FUNCTION__, __LINE__, #expr, (double)expr); |
Definition at line 251 of file SandersSpeck.cpp.
| #define TAUTHRESHOLD 0.0001 |
Definition at line 38 of file SandersSpeck.cpp.
| #define THRESHOLD 0.000001 |
Definition at line 45 of file SandersSpeck.cpp.
| typedef struct taskparams Taskparams |
| void addtasktotaskset | ( | Taskset * | ts, |
| int | id, | ||
| double | work, | ||
| int | maxwidth, | ||
| char * | name | ||
| ) |
Definition at line 145 of file SandersSpeck.cpp.
| int checktoomany | ( | Taskset * | ts, |
| ETable * | et, | ||
| double | c, | ||
| double | cl, | ||
| double | cu, | ||
| int * | bendpointsleftptr, | ||
| double | M | ||
| ) |
Definition at line 376 of file SandersSpeck.cpp.
| void computeetable | ( | ETable * | et, |
| Taskset * | ts, | ||
| int | cores, | ||
| double | M | ||
| ) |
Definition at line 282 of file SandersSpeck.cpp.
| void computehtab | ( | Task * | t, |
| int | maxcores | ||
| ) |
Definition at line 127 of file SandersSpeck.cpp.
| void computeinitialc | ( | Taskset * | ts, |
| ETable * | et, | ||
| double * | clp, | ||
| double * | cup, | ||
| double | M | ||
| ) |
Definition at line 313 of file SandersSpeck.cpp.
| double computeoptc | ( | Taskset * | ts, |
| ETable * | et, | ||
| int | p, | ||
| double | M, | ||
| double | minFreq | ||
| ) |
Definition at line 436 of file SandersSpeck.cpp.
| double computetaskenergy | ( | Task * | t, |
| int | pistar, | ||
| double | taui, | ||
| double | deadline, | ||
| double | lalpha | ||
| ) |
Definition at line 394 of file SandersSpeck.cpp.
| void copytaskset | ( | Taskset * | trg, |
| Taskset * | src, | ||
| char * | name | ||
| ) |
Definition at line 167 of file SandersSpeck.cpp.
| void deinitetable | ( | ETable * | et | ) |
Definition at line 275 of file SandersSpeck.cpp.
| void deinittaskset | ( | Taskset * | ts | ) |
deinit a taskset
Definition at line 159 of file SandersSpeck.cpp.
| double efficiency | ( | int | i, |
| int | maxwidth | ||
| ) |
Definition at line 118 of file SandersSpeck.cpp.
Definition at line 252 of file SandersSpeck.cpp.
| double g | ( | int | i | ) |
Definition at line 114 of file SandersSpeck.cpp.
return pointer to i-th task of a taskset
Definition at line 228 of file SandersSpeck.cpp.
| void initetable | ( | ETable * | et, |
| Taskset * | ts, | ||
| int | cores | ||
| ) |
Definition at line 267 of file SandersSpeck.cpp.
| void inittaskset | ( | Taskset * | ts, |
| int | n, | ||
| char * | name, | ||
| int | maxcores | ||
| ) |
Definition at line 105 of file SandersSpeck.cpp.
| double invertefunction | ( | Taskset * | ts, |
| ETable * | et, | ||
| int | i, | ||
| double | c, | ||
| double | cl, | ||
| double | cu, | ||
| int * | bendpointsleftptr, | ||
| double | M | ||
| ) |
Definition at line 333 of file SandersSpeck.cpp.
| void pelib_delete | ( | pelib::Schedule * | sched | ) |
Definition at line 704 of file SandersSpeck.cpp.
| string pelib_description | ( | size_t | argc, |
| char ** | argv | ||
| ) |
Definition at line 694 of file SandersSpeck.cpp.
| const pelib::Schedule* pelib_schedule | ( | const pelib::Taskgraph & | tg, |
| const pelib::Platform & | pt, | ||
| size_t | argc, | ||
| char ** | argv, | ||
| std::map< const string, double > & | statistics | ||
| ) |
Definition at line 684 of file SandersSpeck.cpp.
| void printetable | ( | ETable * | et | ) |
Definition at line 300 of file SandersSpeck.cpp.
Definition at line 232 of file SandersSpeck.cpp.
| void printtaskset | ( | Taskset * | ts | ) |
Definition at line 242 of file SandersSpeck.cpp.
Definition at line 201 of file SandersSpeck.cpp.
Definition at line 100 of file SandersSpeck.cpp.
Definition at line 95 of file SandersSpeck.cpp.
| char* tasksetname | ( | Taskset * | ts | ) |
Definition at line 220 of file SandersSpeck.cpp.
Definition at line 224 of file SandersSpeck.cpp.
| double alpha |
Definition at line 91 of file SandersSpeck.cpp.
| const long long int nsec_in_sec = 1000000000 |
Definition at line 498 of file SandersSpeck.cpp.