dependency_graph.h File Reference

#include "../../base/timed/graph.h"
Include dependency graph for dependency_graph.h:
This graph shows which files directly or indirectly include this file:

Functions

double stateSpaceAbstractDepGraph (TimedSDFgraph *gr, bool ***nodes, bool ****edges, unsigned int stackSz=1000, unsigned int hashSz=10000)

Function Documentation

double stateSpaceAbstractDepGraph ( TimedSDFgraph gr,
bool ***  nodes,
bool ****  edges,
unsigned int  stackSz,
unsigned int  hashSz 
)

stateSpaceAbstractDepGraph () Compute the throughput and abstract dependency graph of an SDFG for unconstrained buffer sizes and using auto-concurrency using a state-space traversal.

The abstract dependency graph is stored in the matrices 'nodes' (2D) and 'edges' (3D). The value stored at 'nodes[a][b]' indicates whether there is at least one edge which goes directlt from node a to node b. The value stored at 'edges[a][b][c]' indicates wether the channel c in the SDFG has a depedency edge in the abstract dependency graph from node a to node b.

References clearHashTable(), clearStack(), FSMSADF::computeRepetitionVector(), createDependencies(), createHashTable(), createStack(), curReachableNodes, curReachableNodesCh, destroyHashTable(), destroyStack(), execSDFgraph(), findOutputActor(), SDFcomponent::getId(), getMaxExecTime(), HASH_TABLE_SIZE, isStronglyConnectedGraph(), outputActorRepCnt, SDF_MAX_TIME, STACK_SIZE, and TDTIME_MAX.

Referenced by SDFstateSpacePriorityListScheduler::TransitionSystem::initActorPriorities().

Here is the call graph for this function: