Namespaces |
namespace | MPExplore |
namespace | MPExploreBindingAware |
namespace | MPExploreMaxPlusAutomaton |
namespace | MPExploreStateSpace |
Classes |
struct | _MCMedge |
struct | _MCMnode |
class | MCMgraph |
class | ScenarioMatrices |
class | GraphConversion |
class | EdgeLabeledScenarioFSM |
class | MatrixLabeledScenarioFSM |
class | FSMConverter |
class | Actor |
class | Channel |
class | GraphComponent |
class | FSMstate |
class | FSMtransition |
class | FSM |
class | ScenarioGraph |
class | Graph |
class | Port |
class | Scenario |
class | BufferSize |
class | StorageDistribution |
class | StorageDistributions |
class | RandomGraph |
class | OutputHTML |
class | BindingAwareGraph |
class | SDF3Flow |
class | MemoryDimAlgo |
class | TileBindingAlgo |
class | ActorBinding |
class | ChannelBinding |
class | GraphBinding |
class | ConnectionBinding |
class | ChannelBindingConstraints |
class | ScenarioBindingConstraints |
class | GraphBindingConstraints |
class | PlatformBinding |
class | MemoryBinding |
class | NetworkInterfaceBinding |
class | ProcessorBinding |
class | TileBinding |
class | Connection |
class | PlatformGraph |
class | Memory |
class | NetworkInterface |
class | Processor |
class | Tile |
class | EarliestDeadLineFirstScheduling |
class | PrecedenceGraph |
class | StaticOrderScheduleEntry |
class | StaticOrderSchedule |
struct | _CPair |
class | Settings |
class | Tool |
class | AnalyzeSettings |
class | ToolAnalyze |
class | FlowSettings |
class | GenerateSettings |
class | ToolGenerate |
class | TransformSettings |
class | ToolTransform |
Typedefs |
typedef struct FSMSADF::_MCMedge | MCMedge |
typedef list< MCMedge * > | MCMedges |
typedef struct FSMSADF::_MCMnode | MCMnode |
typedef list< MCMnode * > | MCMnodes |
typedef list< MCMgraph * > | MCMgraphs |
typedef std::vector< int > | RepetitionVector |
typedef ::FSM::Labeled::State
< CId, CString > | ELSState |
typedef ::FSM::Labeled::Edge
< CId, CString > | ELSEdge |
typedef
::FSM::Labeled::SetOfStates
< CId, CString > | ELSSetOfStates |
typedef
::FSM::Labeled::SetOfEdges
< CId, CString > | ELSSetOfEdges |
typedef ::FSM::Labeled::State
< CId, Matrix * > | MLSState |
typedef ::FSM::Labeled::Edge
< CId, Matrix * > | MLSEdge |
typedef
::FSM::Labeled::SetOfStates
< CId, Matrix * > | MLSSetOfStates |
typedef
::FSM::Labeled::SetOfEdges
< CId, Matrix * > | MLSSetOfEdges |
typedef list< Actor * > | Actors |
typedef list< Channel * > | Channels |
typedef list< FSMstate * > | FSMstates |
typedef list< FSMtransition * > | FSMtransitions |
typedef list< ScenarioGraph * > | ScenarioGraphs |
typedef map< CString, pair
< Channel *, uint > > | PersistentTokenMap |
typedef uint | Rate |
typedef list< Port * > | Ports |
typedef set< Scenario * > | Scenarios |
typedef double | Bandwidth |
typedef CFraction | Throughput |
typedef int | Time |
typedef uint | Size |
typedef list< ActorBinding > | ActorBindings |
typedef list< ChannelBinding > | ChannelBindings |
typedef list< GraphBinding * > | GraphBindings |
typedef list< ConnectionBinding * > | ConnectionBindings |
typedef list< PlatformBinding * > | PlatformBindings |
typedef list< MemoryBinding * > | MemoryBindings |
typedef list
< NetworkInterfaceBinding * > | NetworkInterfaceBindings |
typedef list< ProcessorBinding * > | ProcessorBindings |
typedef list< TileBinding * > | TileBindings |
typedef list< Connection * > | Connections |
typedef list< PlatformGraph * > | PlatformGraphs |
typedef list< Memory * > | Memories |
typedef list< NetworkInterface * > | NetworkInterfaces |
typedef list< Processor * > | Processors |
typedef list< Tile * > | Tiles |
typedef struct FSMSADF::_CPair | CPair |
typedef list< CPair > | CPairs |
typedef CPairs::iterator | CPairsIter |
Enumerations |
enum | FlowType { FlowTypeNSoC
} |
Functions |
static void | calcFractionsConnectedActors (CFractions &fractions, Actor *a, Scenario *s) |
static RepetitionVector | calcRepetitionVector (CFractions &fractions) |
RepetitionVector | computeRepetitionVector (ScenarioGraph *g, Scenario *s) |
bool | isScenarioGraphConsistent (ScenarioGraph *g, Scenario *s) |
Throughput | throughputAnalysisWithScenarioTransitions (BindingAwareGraph *g) |
Throughput | computeMCMfsm (FSM *fsm, map< Scenario *, MPTime > &delay, map< Scenario *, MPTime > &period) |
Throughput | throughputAnalysisUsingRefSchedule (Graph *g) |
Throughput | computeMCMfsm (FSM *fsm, map< FSMtransition *, MPTime > &delay, map< Scenario *, MPTime > &period) |
Throughput | throughputAnalysisWithScenarioTransitions (Graph *g) |
Throughput | throughputAnalysisGraphUsingMaxPlusAutomaton (Graph *g) |
map< CString, MaxPlus::Vector > | computeReferenceSchedule (map< Scenario *, MaxPlus::Vector * > &eigenvector) |
MaxPlus::Vector * | getReferenceScheduleForScenario (Scenario *s, map< CString, MaxPlus::Vector > &v_ref) |
Throughput | throughputAnalysisGraph (Graph *g) |
Throughput | throughputAnalysisGraphUsingStateSpace (Graph *g) |
void | helpMessage (ostream &out) |
bool | initSettings (int argc, char **argv) |
CNode * | mapApplicationGraphToArchitectureGraph (CNode *sdf3Node, bool outputHTML) |
bool | mappingFlow (ostream &out) |
Settings | settings (MODULE, SETTINGS_TYPE) |
Scenarios | findAllScenariosOfActor (Actor *a) |
bool | actorSupportProcessorType (Actor *a, CString type) |
void | unbindThreadToTile (set< Actor * > &actors, ProcessorBinding *pb, MemoryBinding *mb) |
bool | bindThreadToTile (set< Actor * > &actors, ProcessorBinding *pb, MemoryBinding *mb) |
CNode * | mapApplicationGraphToArchitectureGraph (CNode *sdf3Node, ostream &out) |
Graph * | modelAutoConcurrencyInGraph (const Graph *g, const uint maxDegree) |
Graph * | transformToWorstCaseGraph (Graph *g) |
Variables |
FlowSettings | settings (MODULE, SETTINGS_TYPE) |
Throughput analysis Compute the throughput of an FSM-based SDAF graph while ignoring the FSM.
Algorithm: 1. Determine for each scenario s the eigenvector v_s and period T_s. 2. Compute a suitable 'reference schedule'. This can be done by for example, taking the max over all eigenvectors. An alternative could be to use the ALAP eigenvector. Currently, the first option is used. 3. Compute the delay for each scenario s using the reference schedule and the period of scenario s. 4. The throughput is equal to max_s (d_s + T_s).
throughputAnalysisGraph() Compute the throughput of an FSM-based SDAF graph while ignoring the FSM.
Referenced by FSMSADF::ToolAnalyze::analyzeGraph().
Throughput analysis using reference schedule Compute the throughput of an FSM-based SDAF graph considering the FSM and a reference schedule.
Algorithm: 1. Determine for each scenario s the eigenvector v_s and period T_s. 2. Compute a suitable 'reference schedule'. This can be done by for example, taking the max over all eigenvectors. An alternative could be to use the ALAP eigenvector. Currently, the first option is used. 3. Compute the delay for each scenario s using the reference schedule and the period of scenario s. 4. The throughput is equal to the MCM of the FSM where the weight of a node which corresponds to scenario s is equal to (d_s + T_s).
Throughput analysis using reference schedule Compute the throughput of an FSM-based SDAF graph considering the FSM and a reference schedule.
Referenced by FSMSADF::ToolAnalyze::analyzeGraph().
Throughput FSMSADF::throughputAnalysisWithScenarioTransitions |
( |
BindingAwareGraph * |
g |
) |
|
Throughput analysis considering scenario transitions Compute the throughput of an FSM-based SDAF graph considering the FSM the schedules of each source and destination scenario in the FSM.
Algorithm: 1. Determine for each scenario s the eigenvector v_s and period T_s. 2. The throughput is equal to the MCM of the FSM where the weight of an edge which represents a scenario transition from scenario s to scenario t is equal to: d_st = exploreDelayForSchedule(v_s, v_t, T_t).
Throughput analysis considering scenario transitions Compute the throughput of a binding-aware FSM-based SDAF graph considering the FSM the schedules of each source and destination scenario in the FSM.
Referenced by FSMSADF::ToolAnalyze::analyzeGraph(), and FSMSADF::RandomGraph::assignThroughputConstraint().
Throughput FSMSADF::throughputAnalysisWithScenarioTransitions |
( |
Graph * |
g |
) |
|
Throughput analysis considering scenario transitions Compute the throughput of an FSM-based SDAF graph considering the FSM the schedules of each source and destination scenario in the FSM.
Algorithm: 1. Determine for each scenario s the eigenvector v_s and period T_s. 2. The throughput is equal to the MCM of the FSM where the weight of an edge which represents a scenario transition from scenario s to scenario t is equal to: d_st = exploreDelayForSchedule(v_s, v_t, T_t).
Throughput analysis considering scenario transitions Compute the throughput of an FSM-based SDAF graph considering the FSM the schedules of each source and destination scenario in the FSM.