crown
1.0.0
|
#include <CrownScheduler.hpp>
Public Member Functions | |
CrownScheduler (const CrownConfig *=NULL, bool showOutput=false, bool showError=false) | |
CrownScheduler (const Algebra ¶m, const CrownConfig *=NULL, bool showOutput=false, bool showError=false) | |
CrownScheduler (const Taskgraph &tg, const Platform &pt, const Algebra ¶m, const CrownConfig *=NULL, bool showOutput=false, bool showError=false) | |
CrownScheduler (const CrownScheduler &src) | |
virtual | ~CrownScheduler () |
virtual Schedule | schedule (const Taskgraph &tg, const Platform &pt, std::map< const string, double > &) const =0 |
virtual Schedule | schedule (const Taskgraph &tg, const Platform &pt, const Algebra ¶m, std::map< const string, double > &) const =0 |
virtual float | complexity (const Algebra &problem) const |
virtual float | complexity (const Taskgraph &, const Platform &, const Algebra &) const |
const Algebra * | solve () const |
const Algebra * | solve (map< const string, double > &) const |
virtual Algebra | solve (const Algebra &tg, const Algebra &pt, const pelib::Algebra ¶m, std::map< const std::basic_string< char >, double > &statistics) const =0 |
virtual CrownScheduler * | clone () const =0 |
virtual std::string | getShortDescription () const |
const CrownConfig * | getCrownConfig () const |
Algebra | addCrownConfig (const Taskgraph &, const Platform &, const Algebra &, std::map< const string, double > &) const |
Static Public Member Functions | |
static Algebra | crownToSchedule (const Algebra &crown) |
Public Attributes | |
const CrownConfig * | config |
Protected Member Functions | |
CrownConfig * | getDefaultConfig () const |
Protected Attributes | |
bool | showError |
bool | showOutput |
Taskgraph | tg |
Platform | pt |
Algebra | param |
Definition at line 37 of file CrownScheduler.hpp.
CrownScheduler::CrownScheduler | ( | const CrownConfig * | config = NULL , |
bool | showOutput = false , |
||
bool | showError = false |
||
) |
Definition at line 111 of file CrownScheduler.cpp.
CrownScheduler::CrownScheduler | ( | const Algebra & | param, |
const CrownConfig * | config = NULL , |
||
bool | showOutput = false , |
||
bool | showError = false |
||
) |
Definition at line 122 of file CrownScheduler.cpp.
CrownScheduler::CrownScheduler | ( | const Taskgraph & | tg, |
const Platform & | pt, | ||
const Algebra & | param, | ||
const CrownConfig * | config = NULL , |
||
bool | showOutput = false , |
||
bool | showError = false |
||
) |
Definition at line 130 of file CrownScheduler.cpp.
CrownScheduler::CrownScheduler | ( | const CrownScheduler & | src | ) |
Definition at line 140 of file CrownScheduler.cpp.
CrownScheduler::~CrownScheduler | ( | ) | [virtual] |
Definition at line 431 of file CrownScheduler.cpp.
Algebra CrownScheduler::addCrownConfig | ( | const Taskgraph & | tg, |
const Platform & | pt, | ||
const Algebra & | p, | ||
std::map< const string, double > & | stats | ||
) | const |
Definition at line 50 of file CrownScheduler.cpp.
virtual CrownScheduler* pelib::crown::CrownScheduler::clone | ( | ) | const [pure virtual] |
Implemented in pelib::crown::CrownMapping, pelib::crown::CrownScaling, pelib::crown::CrownBinary, pelib::crown::CrownModular, pelib::crown::CrownCompositeAnnealing, pelib::crown::CrownScalingHeight, pelib::crown::CrownMappingLTLG, pelib::crown::CrownScalingILP, pelib::crown::CrownMappingILP, pelib::crown::CrownMappingILPBalanced, pelib::crown::CrownCompositeConsolidation, and pelib::crown::CrownILPIntegrated.
float CrownScheduler::complexity | ( | const Algebra & | problem | ) | const [virtual] |
Reimplemented in pelib::crown::CrownMapping, pelib::crown::CrownScaling, pelib::crown::CrownBinary, pelib::crown::CrownModular, pelib::crown::CrownScalingHeight, pelib::crown::CrownCompositeAnnealing, pelib::crown::CrownMappingLTLG, pelib::crown::CrownScalingILP, pelib::crown::CrownILPIntegrated, pelib::crown::CrownMappingILP, pelib::crown::CrownMappingILPBalanced, and pelib::crown::CrownCompositeConsolidation.
Definition at line 437 of file CrownScheduler.cpp.
float CrownScheduler::complexity | ( | const Taskgraph & | tg, |
const Platform & | pt, | ||
const Algebra & | param | ||
) | const [virtual] |
Reimplemented in pelib::crown::CrownBinary, pelib::crown::CrownModular, pelib::crown::CrownCompositeAnnealing, pelib::crown::CrownILPIntegrated, and pelib::crown::CrownCompositeConsolidation.
Definition at line 443 of file CrownScheduler.cpp.
Algebra CrownScheduler::crownToSchedule | ( | const Algebra & | crown | ) | [static] |
Definition at line 273 of file CrownScheduler.cpp.
const CrownConfig * CrownScheduler::getCrownConfig | ( | ) | const |
Definition at line 267 of file CrownScheduler.cpp.
CrownConfig * CrownScheduler::getDefaultConfig | ( | ) | const [protected] |
Definition at line 44 of file CrownScheduler.cpp.
string CrownScheduler::getShortDescription | ( | ) | const [virtual] |
Reimplemented in pelib::crown::CrownMapping, pelib::crown::CrownScaling, pelib::crown::CrownBinary, pelib::crown::CrownModular, pelib::crown::CrownCompositeAnnealing, pelib::crown::CrownScalingHeight, pelib::crown::CrownCompositeConsolidation, pelib::crown::CrownMappingLTLG, pelib::crown::CrownScalingILP, pelib::crown::CrownILPIntegrated, pelib::crown::CrownMappingILP, pelib::crown::CrownMappingILPBalanced, and pelib::crown::CrownComposite.
Definition at line 151 of file CrownScheduler.cpp.
virtual Schedule pelib::crown::CrownScheduler::schedule | ( | const Taskgraph & | tg, |
const Platform & | pt, | ||
std::map< const string, double > & | |||
) | const [pure virtual] |
virtual Schedule pelib::crown::CrownScheduler::schedule | ( | const Taskgraph & | tg, |
const Platform & | pt, | ||
const Algebra & | param, | ||
std::map< const string, double > & | |||
) | const [pure virtual] |
const Algebra * CrownScheduler::solve | ( | ) | const |
Reimplemented in pelib::crown::CrownBinary, and pelib::crown::CrownModular.
Definition at line 449 of file CrownScheduler.cpp.
const Algebra * CrownScheduler::solve | ( | map< const string, double > & | statistics | ) | const |
Reimplemented in pelib::crown::CrownBinary, and pelib::crown::CrownModular.
Definition at line 457 of file CrownScheduler.cpp.
virtual Algebra pelib::crown::CrownScheduler::solve | ( | const Algebra & | tg, |
const Algebra & | pt, | ||
const pelib::Algebra & | param, | ||
std::map< const std::basic_string< char >, double > & | statistics | ||
) | const [pure virtual] |
Definition at line 57 of file CrownScheduler.hpp.
Algebra pelib::crown::CrownScheduler::param [protected] |
Definition at line 64 of file CrownScheduler.hpp.
Platform pelib::crown::CrownScheduler::pt [protected] |
Definition at line 63 of file CrownScheduler.hpp.
bool pelib::crown::CrownScheduler::showError [protected] |
Definition at line 61 of file CrownScheduler.hpp.
bool pelib::crown::CrownScheduler::showOutput [protected] |
Definition at line 61 of file CrownScheduler.hpp.
Taskgraph pelib::crown::CrownScheduler::tg [protected] |
Definition at line 62 of file CrownScheduler.hpp.