|
typedef std::pair< std::string, ExplorerPluginParameter > | Parameter |
|
typedef std::map< std::string, ExplorerPluginParameter > | ParameterMap |
|
typedef std::map< std::string, ExplorerPluginParameter >::iterator | PMIt |
|
typedef std::map< std::string, ExplorerPluginParameter >::const_iterator | PMCIt |
|
virtual std::string | description () const |
|
void | addParameter (TCEString name, ExplorerPluginParameterType type, bool compulsory=true, TCEString defaultValue="", TCEString description="") |
|
template<typename T > |
void | readCompulsoryParameter (const std::string paramName, T ¶m) const |
|
template<typename T > |
void | readOptionalParameter (const std::string paramName, T ¶m) const |
|
template<typename RT > |
RT | parameterValue (const std::string ¶mName) const |
|
virtual | ~DesignSpaceExplorerPlugin () |
|
virtual void | giveParameter (const std::string &name, const std::string &value) |
|
virtual std::string | name () const |
|
virtual void | setPluginName (const std::string &pluginName) |
|
virtual bool | hasParameter (const std::string ¶mName) const |
|
ParameterMap | parameters () const |
|
virtual bool | booleanValue (const std::string ¶meter) const |
|
| DesignSpaceExplorer () |
|
virtual | ~DesignSpaceExplorer () |
|
virtual void | setDSDB (DSDBManager &dsdb) |
|
virtual bool | evaluate (const DSDBManager::MachineConfiguration &configuration, CostEstimates &results=dummyEstimate_, bool estimate=false) |
|
virtual DSDBManager & | db () |
|
std::vector< DesignSpaceExplorerPlugin * > | getPlugins () |
|
RowID | createImplementationAndStore (const DSDBManager::MachineConfiguration &conf, const double &frequency=0.0, const double &maxArea=0.0, const bool &createEstimates=true, const std::string &icDec="DefaultICDecoder", const std::string &icDecHDB="asic_130nm_1.5V.hdb") |
|
bool | createImplementation (const DSDBManager::MachineConfiguration &conf, DSDBManager::MachineConfiguration &newConf, const double &frequency=0.0, const double &maxArea=0.0, const bool &createEstimates=true, const std::string &icDec="DefaultICDecoder", const std::string &icDecHDB="asic_130nm_1.5V.hdb") |
|
IDF::MachineImplementation * | selectComponents (const TTAMachine::Machine &mach, const double &frequency=0.0, const double &maxArea=0.0, const std::string &icDec="DefaultICDecoder", const std::string &icDecHDB="asic_130nm_1.5V.hdb") const |
|
void | createEstimateData (const TTAMachine::Machine &mach, const IDF::MachineImplementation &idf, CostEstimator::AreaInGates &area, CostEstimator::DelayInNanoSeconds &longestPathDelay) |
|
RowID | addConfToDSDB (const DSDBManager::MachineConfiguration &conf) |
|
static DesignSpaceExplorerPlugin * | loadExplorerPlugin (const std::string &pluginName, DSDBManager *dsdb=NULL) |
|
| DesignSpaceExplorerPlugin () |
|
void | checkParameters () const |
|
TTAProgram::Program * | schedule (const std::string applicationFile, TTAMachine::Machine &machine, TCEString paramOptions="-O3") |
|
const ExecutionTrace * | simulate (const TTAProgram::Program &program, const TTAMachine::Machine &machine, const TestApplication &testApplication, const ClockCycleCount &maxCycles, ClockCycleCount &runnedCycles, const bool tracing, const bool useCompiledSimulation=false, std::vector< ClockCycleCount > *executionCounts=NULL) |
|
std::string | pluginName_ |
| the name of the explorer plugin More...
|
|
ParameterMap | parameters_ |
| Parameters for the plugin. More...
|
|
Explorer plugin that checks that given config or adf meets minimal opset requirements stated by minimal machine adf or user given reference adf.
Supported parameters:
Definition at line 58 of file MinimalOpSet.cc.
virtual std::vector<RowID> MinimalOpSet::explore |
( |
const RowID & |
configurationID, |
|
|
const unsigned int & |
|
|
) |
| |
|
inlineprivatevirtual |
Explorer plugin that checks that given config or adf meets minimal opset requirements stated by minimal machine adf or user given reference adf.
Reimplemented from DesignSpaceExplorerPlugin.
Definition at line 87 of file MinimalOpSet.cc.
89 std::vector<RowID> result;
93 if (configurationID == 0 &&
adf_ ==
"") {
94 std::ostringstream msg(std::ostringstream::out);
95 msg <<
"No configuration nor adf defined. Use -s <confID> to "
96 <<
"define the configuration to be optimized or give adf "
97 <<
"as plugin parameter." << std::endl;
108 if (configurationID == 0) {
123 std::ostringstream msg(std::ostringstream::out);
131 std::vector<std::string> missingOps;
133 if (missingOps.empty()) {
134 std::cout <<
"MinimalOpSet: Configuration/machine has all"
135 <<
" the operations in the minimal opset already."
139 for (
unsigned int i = 0; i < missingOps.size(); ++i) {
140 std::cout << missingOps.at(i) +
" : operation is missing."
148 minimalOpSetCheck.
fix(*mach);
150 verboseLog(
"MinimalOpSet: Configuration/machine has all the"
151 "operations in the minimal opset already.")
157 newConf.architectureID = dsdb.addArchitecture(*mach);
158 newConf.hasImplementation =
false;
161 if (conf.hasImplementation) {
166 bool estimate = (newConf.hasImplementation ? true :
false);
168 if (!
evaluate(newConf, estimates, estimate)) {
169 debugLog(std::string(
"Evaluate failed."));
173 debugLog(std::string(
"Error in Evaluate plugin: ")
180 if (newConfID != 0) {
181 result.push_back(newConfID);
References DSDBManager::addArchitecture(), DSDBManager::architecture(), DSDBManager::MachineConfiguration::architectureID, DSDBManager::configuration(), debugLog, Exception::errorMessage(), Exception::errorMessageStack(), MinimalOpSetCheck::fix(), DSDBManager::MachineConfiguration::hasImplementation, MinimalOpSetCheck::missingOperations(), and verboseLog.