#include "mcmgraph.h"
#include "../../base/hsdf/check.h"
#include "../../base/algo/components.h"
#include <stdlib.h>
#include <stddef.h>
#include <stdio.h>
#include <math.h>
Defines | |
#define | MAX_NIterations 1000 |
#define | EPSILON -HUGE_VAL |
Functions | |
static void | Epsilon (double *a, int narcs, double *epsilon) |
static void | Initial_Policy () |
static void | New_Build_Inverse () |
static void | Init_Depth_First () |
static void | New_Depth_First_Label (int i) |
static void | Visit_From (int initialpoint, int color) |
static void | Value () |
static void | Init_Improve () |
static void | First_Order_Improvement (int *improved) |
static void | Second_Order_Improvement (int *improved) |
static void | Improve (int *improved) |
static void | Allocate_Memory () |
static void | Free_Memory () |
static void | Check_Rows () |
static void | Security_Check () |
static void | Import_Arguments (int *IJ, double *A, int NNODES, int NARCS, double *CHI, double *V, int *POLICY, int *NITERATIONS, int *NCOMPONENTS) |
static void | Update_Policy () |
static void | End_Message () |
static void | Howard (int *IJ, double *A, int NNODES, int NARCS, double *CHI, double *V, int *POLICY, int *NITERATIONS, int *NCOMPONENTS) |
static void | convertMCMgraphToMatrix (MCMgraph *g, int *IJ, double *A) |
static CFraction | mcmHoward (TimedSDFgraph *g) |
CFraction | maximumCycleMeanHoward (TimedSDFgraph *g) |
Variables | |
static int * | ij |
static double * | a |
static int | nnodes |
static int | narcs |
static double * | chi |
static double * | v |
static int * | pi |
static int * | NIterations |
static int * | NComponents |
static int * | newpi = NULL |
static int * | piinv_idx = NULL |
static int * | piinv_succ = NULL |
static int * | piinv_elem = NULL |
static int * | piinv_last = NULL |
static double * | c = NULL |
static double * | vaux = NULL |
static double * | newc = NULL |
static double * | newchi = NULL |
static int * | visited = NULL |
static int * | component = NULL |
static double | lambda = 0 |
static double | epsilon = 0 |
static int | color = 1 |
Define Documentation
#define EPSILON -HUGE_VAL |
Referenced by Initial_Policy().
#define MAX_NIterations 1000 |
Referenced by End_Message(), and Howard().
Function Documentation
static void Allocate_Memory | ( | ) | [static] |
References c, component, newc, newchi, newpi, nnodes, piinv_elem, piinv_idx, piinv_last, piinv_succ, vaux, and visited.
Referenced by Howard().
static void Check_Rows | ( | ) | [static] |
References ij, narcs, and nnodes.
Referenced by Security_Check().
static void convertMCMgraphToMatrix | ( | MCMgraph * | g, | |
int * | IJ, | |||
double * | A | |||
) | [static] |
convertMCMgraphToMatrix () The function converts a weighted directed graph used in the MCM algorithms to a sparse amtrix input for Howard's algorithm.
References _MCMedge::dst, MCMgraph::edges, _MCMnode::id, MCMgraph::nodes, _MCMedge::src, _MCMedge::visible, _MCMnode::visible, and _MCMedge::w.
Referenced by mcmHoward().
static void End_Message | ( | ) | [static] |
References MAX_NIterations, and NIterations.
Referenced by Howard().
static void Epsilon | ( | double * | a, | |
int | narcs, | |||
double * | epsilon | |||
) | [static] |
Epsilon () The termination tests are performed up to an epsilon constant, which is fixed heuristically by the following routine.
Referenced by Howard().
static void First_Order_Improvement | ( | int * | improved | ) | [static] |
static void Free_Memory | ( | ) | [static] |
References c, component, newc, newchi, newpi, piinv_elem, piinv_idx, piinv_last, piinv_succ, vaux, and visited.
Referenced by Howard().
static void Howard | ( | int * | IJ, | |
double * | A, | |||
int | NNODES, | |||
int | NARCS, | |||
double * | CHI, | |||
double * | V, | |||
int * | POLICY, | |||
int * | NITERATIONS, | |||
int * | NCOMPONENTS | |||
) | [static] |
Howard () Howard Policy Iteration Algorithm for Max Plus Matrices.
INPUT of Howard Algorithm: ij,A,nnodes,narcs : sparse description of a matrix.
OUTPUT: chi cycle time vector v bias pi optimal policy NIterations: Number of iterations of the algorithm NComponents: Number of connected components of the optimal policy
REQUIRES: O(nnodes) SPACE One iteration requires: O(narcs+nnodes) TIME
The following variables should be defined in the environment from which the Howard routine is called.
INPUT VARIABLES int NNODES; number of nodes of the graph int NARCS; number of arcs of the graph int *IJ; array of integers of size 2*narcs for (0 <=k <narcs), the arc numbered k goes from IJ[k][0] =(IJ[2k]) to IJ[k][1] (=IJ[2k+1]) double *A; array of double of size narcs A[k]=weight of the arc numbered k
OUTPUT VARIABLES double *V; array of double of size nnodes (the bias vector) double *CHI; array of double of size nnodes (the cycle time vector) int *POLICY; array of integer of size nnodes (an optimal policy) int NITERATIONS; the number of iterations of the algorithm int NCOMPONENTS; the number of connected components of the optimal policy which is returned.
References a, Allocate_Memory(), End_Message(), epsilon, Epsilon(), Free_Memory(), Import_Arguments(), Improve(), Initial_Policy(), MAX_NIterations, narcs, New_Build_Inverse(), NIterations, Security_Check(), Update_Policy(), and Value().
Referenced by mcmHoward().
static void Import_Arguments | ( | int * | IJ, | |
double * | A, | |||
int | NNODES, | |||
int | NARCS, | |||
double * | CHI, | |||
double * | V, | |||
int * | POLICY, | |||
int * | NITERATIONS, | |||
int * | NCOMPONENTS | |||
) | [static] |
References a, chi, ij, narcs, NComponents, NIterations, nnodes, pi, and v.
Referenced by Howard().
static void Improve | ( | int * | improved | ) | [static] |
References First_Order_Improvement(), Init_Improve(), NComponents, and Second_Order_Improvement().
Referenced by Howard().
static void Init_Depth_First | ( | ) | [static] |
static void Init_Improve | ( | ) | [static] |
static void Initial_Policy | ( | ) | [static] |
Initial_Policy Build an admissible policy pi and its associated cost vector c from ij and A. Reasonable greedy rule to determine the first policy. pi(node i) = arc with maximal weigth starting from i for full random matrices, this choice of initial policy seems to cut the number of iterations by a factor 1.5, by comparison with a random initial policy.
References a, c, EPSILON, ij, narcs, nnodes, pi, and vaux.
Referenced by Howard().
CFraction maximumCycleMeanHoward | ( | TimedSDFgraph * | g | ) |
maximumCycleMeanHoward () The function computes the maximum cycle mean of a HSDF graph using Howard's algorithm.
References isHSDFgraph(), isStronglyConnectedGraph(), and mcmHoward().
Referenced by analyzeSDFG().
static CFraction mcmHoward | ( | TimedSDFgraph * | g | ) | [static] |
mcmHoward () The function computes the maximum cycle mean of a HSDF graph using Howard's algorithm.
References chi, convertMCMgraphToMatrix(), Howard(), MCMgraph::nrEdges(), MCMgraph::nrNodes(), stronglyConnectedMCMgraph(), transformHSDFtoMCMgraph(), and v.
Referenced by maximumCycleMeanHoward().
static void New_Build_Inverse | ( | ) | [static] |
References nnodes, pi, piinv_elem, piinv_idx, piinv_last, and piinv_succ.
Referenced by Howard().
static void New_Depth_First_Label | ( | int | i | ) | [static] |
Given the value of v at initial point i, we compute v[j] for all predecessor j of i, according to the spectral equation, v[j]+ lambda = A(arc from j to i) v[i] the array visited is changed by side effect.
References a, c, chi, color, component, lambda, piinv_elem, piinv_idx, piinv_succ, v, and visited.
Referenced by Visit_From().
static void Second_Order_Improvement | ( | int * | improved | ) | [static] |
static void Security_Check | ( | ) | [static] |
References Check_Rows(), narcs, and nnodes.
Referenced by Howard().
static void Update_Policy | ( | ) | [static] |
static void Value | ( | ) | [static] |
Value() Computes the value (v,chi) associated with a policy pi.
References color, component, Init_Depth_First(), NComponents, nnodes, and Visit_From().
Referenced by Howard(), and SparseMatrix::set().
static void Visit_From | ( | int | initialpoint, | |
int | color | |||
) | [static] |
Variable Documentation
double* a [static] |
Referenced by SDFstateSpaceBufferAnalysisNingGao::addStorageDistributionToChecklist(), LoadBalanceBinding::allocateTDMAtimeSlices(), SDFstateSpaceMinimalLatencyAnalysis::analyze(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::analyzePeriodicPhase(), analyzePeriodicPhase(), SDFstateSpaceBufferAnalysis::TransitionSystem::analyzePeriodicPhase(), CSDFstateSpaceBufferAnalysis::TransitionSystem::analyzePeriodicPhase(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::analyzePeriodicPhase(), analyzeSDFG(), SDFstateSpaceMinimalLatencyAnalysis::analyzeSingleProc(), Binding::analyzeThroughputApplication(), FSMSADF::RandomGraph::assignProperties(), FSMSADF::RandomGraph::assignRatesAndInitialTokens(), LoadBalanceBinding::bindActorsToTiles(), LoadBalanceBinding::bindSDFGtoTiles(), FSMSADF::bindThreadToTile(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::clockStep(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::clockStep(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::clockStep(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::clockStep(), SDFstateSpaceThroughputAnalysis::TransitionSystem::clockStep(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::clockStep(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::clockStep(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::clockStep(), SDFstateSpacePriorityListScheduler::TransitionSystem::clockStep(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::clockStep(), SDFstateSpaceListScheduler::TransitionSystem::clockStep(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::clockStep(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::clockStep(), clockStep(), SDFstateSpaceBufferAnalysis::TransitionSystem::clockStep(), CSDFstateSpaceBufferAnalysis::TransitionSystem::clockStep(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::clockStep(), SDFgraph::clone(), TimedSDFgraph::clone(), FSMSADF::ScenarioGraph::clone(), CSDFgraph::clone(), TimedCSDFgraph::clone(), SDFactor::clone(), TimedSDFactor::clone(), FSMSADF::Actor::clone(), CSDFactor::clone(), TimedCSDFactor::clone(), componentToCSDFgraph(), componentToSDFgraph(), computeGraphPeriod(), FSMSADF::GraphBinding::computeParetoQuantities(), computeRepetitionVector(), SDF3Flow::computeStorageDistributions(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::computeTileUtilization(), SDFgraph::construct(), TimedSDFgraph::construct(), SDFactor::construct(), CSDFactor::construct(), constructCSDFgraph(), FSMSADF::StaticOrderSchedule::constructFromXML(), FSMSADF::ProcessorBinding::constructFromXML(), FSMSADF::MemoryBinding::constructFromXML(), FSMSADF::ScenarioGraph::constructFromXML(), FSMSADF::ScenarioGraph::constructPropertiesFromXML(), constructTimedCSDFgraph(), constructTimedCSDFgraphStructure(), convertMCMgraphToYTOgraph(), FSMSADF::OutputHTML::convertPlatformBindingToPNG(), SDFconvertToHTML::convertPlatformMapping(), FSMSADF::OutputHTML::convertScenarioGraphToPNG(), SDFconvertToHTML::convertSDFgraph(), convertSDFGtoCSDFG(), MaxPlusAnalysis::Exploration::convertToHSDFByMP(), MaxPlusAnalysis::Exploration::convertToMaxPlusMatrix(), SDFgraph::createActor(), TimedSDFgraph::createActor(), FSMSADF::ScenarioGraph::createActor(), CSDFgraph::createActor(), TimedCSDFgraph::createActor(), createActor(), FSMSADF::RandomGraph::createActor(), createAcyclicGraph(), createCapacityConstrainedModel(), SDFactor::createCopy(), TimedSDFactor::createCopy(), FSMSADF::Actor::createCopy(), CSDFactor::createCopy(), TimedCSDFactor::createCopy(), createCSDFnode(), createCSDFpropertiesNode(), createDependencies(), createGraph(), createInitialMCMgraph(), createSDFnode(), createSDFpropertiesNode(), dfs(), dfsMCMgraph(), distributeInitialTokensInComponent(), FSMSADF::GraphConversion::ensureStronglyBounded(), SDF3Flow::estimateLatencyConstraints(), LoadBalanceBinding::estimateMaxCycleMean(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::execConstrainedSDFgraph(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::execCSDFgraph(), CSDFstateSpaceBufferAnalysis::TransitionSystem::execCSDFgraph(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::execSDFgraph(), SDFstateSpaceThroughputAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpacePriorityListScheduler::TransitionSystem::execSDFgraph(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceListScheduler::TransitionSystem::execSDFgraph(), SDFstateSpaceDeadlockAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::execSDFgraph(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::execSDFgraph(), execSDFgraph(), SDFstateSpaceBufferAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::execSDFgraphComputeSchedule(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::execSDFgraphSelfTimed(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::execSDFgraphSelfTimed(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::execSDFgraphStaticPeriodic(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::execSDFgraphStaticPeriodic(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::execSDFgraphUsingDemandList(), MaxPlusAnalysis::Exploration::explore(), MaxPlusAnalysis::Exploration::explore_backward(), MaxPlusAnalysis::Exploration::exploreDelayForSchedule(), FSMSADF::MPExplore::Exploration::exploreDelayForSchedule(), MaxPlusAnalysis::Exploration::exploreEigen(), FSMSADF::MPExplore::Exploration::exploreEigen(), FSMSADF::BindingAwareGraph::extractActorMapping(), FSMSADF::GraphBinding::extractApplicationBindingFromPlatformBinding(), FSMSADF::ScenarioGraph::extractSDFgraph(), SDFstateSpacePriorityListScheduler::TransitionSystem::findAllDependencies(), SDFstateSpaceBufferAnalysisNingGao::findMinimalStorageDistributions(), findOutputActor(), First_Order_Improvement(), generateCSDFgraph(), generateSDFgraphProperties(), SDFgraph::getActor(), FSMSADF::ScenarioGraph::getActor(), CSDFgraph::getActor(), FSMSADF::MemoryBinding::getAllocatedMemorySize(), getLbOutputInterval(), getMaxExecTime(), getMaximumExecTime(), getNextActor(), getNextNode(), getOutputActor(), getOutputActorRepCnt(), CSDFgraph::getRepetitionVector(), MaxPlusAnalysis::GraphDecoration::Graph::Graph(), hapiNetworkConstructor(), hapiNetworkDeclaration(), hapiNetworkDeclarationH(), FSMSADF::ScenarioGraph::hasActor(), Howard(), Import_Arguments(), SDFstateSpacePriorityListScheduler::TransitionSystem::initActorPriorities(), initDependencies(), Initial_Policy(), SDFstateSpaceBufferAnalysisNingGao::initLbDistributionSz(), SDFstateSpaceBufferAnalysisNingGao::initMinimalChannelSz(), SDFstateSpaceBufferAnalysisNingGao::initMinimalChannelSzStep(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::initOutputActor(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::initOutputActor(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::initOutputActor(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::initOutputActor(), SDFstateSpaceThroughputAnalysis::TransitionSystem::initOutputActor(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::initOutputActor(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::initOutputActor(), SDFstateSpacePriorityListScheduler::TransitionSystem::initOutputActor(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::initOutputActor(), SDFstateSpaceListScheduler::TransitionSystem::initOutputActor(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::initOutputActor(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::initOutputActor(), SDFstateSpaceBufferAnalysis::TransitionSystem::initOutputActor(), CSDFstateSpaceBufferAnalysis::TransitionSystem::initOutputActor(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::initOutputActor(), CSDFgraph::isConnected(), isConnected(), isHSDFgraph(), FSMSADF::ScenarioGraph::isolateScenario(), makeConsistent(), makeSimpleGraph(), FSMSADF::mapApplicationGraphToArchitectureGraph(), mcmSimpleCycles(), modelAutoConcurrencyInSDFgraph(), BindingAwareSDFG::modelBindingInMPFlow(), BindingAwareSDFG::modelBindingInNSoCFlow(), FSMSADF::BindingAwareGraph::modelBindingInNSoCFlow(), modelCapacityConstrainedBuffer(), New_Depth_First_Label(), LoadBalanceBinding::optimizeActorToTileBindings(), SDFconvertToHTML::outputPlatformMappingAsDot(), outputSDFasDot(), outputSDFasHAPI(), SDFconvertToHTML::outputSDFgraphAsDot(), FSMSADF::PrecedenceGraph::PrecedenceGraph(), SDFgraph::print(), TimedSDFgraph::print(), FSMSADF::ScenarioGraph::print(), CSDFgraph::print(), TimedCSDFgraph::print(), printAnalyzeDeadlock(), printAnalyzePeriodicPhase(), printDefinitions(), printExecSdfGraph(), FSMSADF::OutputHTML::printPlatformBinding(), FSMSADF::OutputHTML::printScenario(), printSdfGraph(), printSdfHeader(), MTRand::rand53(), LoadBalanceBinding::releaseResources(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::releaseStorageSpaceSharedOutputBuffer(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::releaseStorageSpaceSharedOutputBuffer(), SDFgraph::removeActor(), FSMSADF::ScenarioGraph::removeActor(), CSDFgraph::removeActor(), FSMSADF::EarliestDeadLineFirstScheduling::scheduleScenario(), sdfComponentToGraph(), sdfToGraph(), Second_Order_Improvement(), FSMSADF::RandomGraph::selectInitialTokenChannels(), setMappingMemory(), setMappingProcessor(), FSMSADF::MPExploreBindingAware::SGraph::SGraph(), FSMSADF::MPExplore::SGraph::SGraph(), transformGraph(), transformHSDFtoAPG(), transformSDFtoHSDF(), FSMSADF::unbindThreadToTile(), unfoldHSDF(), CSDFgraph::~CSDFgraph(), FSMSADF::ScenarioGraph::~ScenarioGraph(), and SDFgraph::~SDFgraph().
double* c = NULL [static] |
Referenced by SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::actorReadyToFire(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::actorReadyToFire(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::actorReadyToFire(), SDFstateSpaceThroughputAnalysis::TransitionSystem::actorReadyToFire(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpacePriorityListScheduler::TransitionSystem::actorReadyToFire(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpaceListScheduler::TransitionSystem::actorReadyToFire(), SDFstateSpaceDeadlockAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::actorReadyToFire(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::actorReadyToFire(), actorReadyToFire(), SDFstateSpaceBufferAnalysis::TransitionSystem::actorReadyToFire(), CSDFstateSpaceBufferAnalysis::TransitionSystem::actorReadyToFire(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::actorReadyToFire(), MaxPlus::Matrix::add(), addDependencyEdgeForActor(), addStorageDistributionToChecklist(), SDFstateSpaceBufferAnalysis::addStorageDistributionToChecklist(), CSDFstateSpaceBufferAnalysis::addStorageDistributionToChecklist(), SDFstateSpaceBindingAwareBufferAnalysis::addStorageDistributionToChecklist(), Allocate_Memory(), LoadBalanceBinding::allocateResources(), SDFstateSpaceThroughputAnalysis::analyze(), CSDFstateSpaceThroughputAnalysis::analyze(), analyzeCSDFG(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::analyzeDeadlock(), analyzeDeadlock(), SDFstateSpaceBufferAnalysis::TransitionSystem::analyzeDeadlock(), CSDFstateSpaceBufferAnalysis::TransitionSystem::analyzeDeadlock(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::analyzeDeadlock(), analyzePeriodicPhase(), analyzeSDFG(), Binding::analyzeThroughputApplication(), assignConsistentRates(), FSMSADF::RandomGraph::assignInitialTokensToChannels(), FSMSADF::RandomGraph::assignProperties(), FSMSADF::RandomGraph::assignRatesAndInitialTokens(), FSMSADF::RandomGraph::assignRatesToPorts(), LoadBalanceBinding::bwChannelsMappedToInConnection(), LoadBalanceBinding::bwChannelsMappedToOutConnection(), calcFractionsConnectedActors(), FSMSADF::calcFractionsConnectedActors(), CSDFgraph::calcFractionsConnectedActors(), FSMSADF::ScenarioBindingConstraints::clone(), componentToCSDFgraph(), componentToSDFgraph(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::computeDemandList(), computeGraphPeriod(), computeLbDistributionSz(), LoadBalanceBinding::computeLoadOfChannelToConnectionBinding(), computeMinimalChannelSz(), computeMinimalChannelSzStep(), FSMSADF::MemoryDimAlgo::computeStorageDist(), SDFgraph::construct(), TimedSDFgraph::construct(), SDFchannel::construct(), CSDFchannel::construct(), constructCSDFgraph(), FSMSADF::NetworkInterfaceBinding::constructFromXML(), FSMSADF::MemoryBinding::constructFromXML(), FSMSADF::PlatformGraph::constructFromXML(), FSMSADF::PlatformBinding::constructFromXML(), FSMSADF::ScenarioGraph::constructFromXML(), FSMSADF::ScenarioBindingConstraints::constructFromXML(), FSMSADF::ConnectionBinding::constructFromXML(), FSMSADF::Channel::constructFromXML(), constructPlatformGraph(), FSMSADF::ScenarioGraph::constructPropertiesFromXML(), FSMSADF::PlatformBinding::constructResourceUsageFromXML(), constructTimedCSDFgraph(), constructTimedCSDFgraphStructure(), MaxPlusAnalysis::SymbolicState::consume(), MaxPlusAnalysis::State::consume(), FSMSADF::MPExploreBindingAware::State::consume(), FSMSADF::MPExplore::State::consume(), MaxPlusAnalysis::State::consume_back(), FSMSADF::MPExplore::Exploration::convertEigenvector(), FSMSADF::OutputHTML::convertGraphToPNG(), SDFconvertToHTML::convertInterconnectGraphToPNG(), FSMSADF::OutputHTML::convertPlatformBindingToPNG(), SDFconvertToHTML::convertPlatformGraph(), SDFconvertToHTML::convertPlatformGraphToPNG(), FSMSADF::OutputHTML::convertPlatformGraphToPNG(), SDFconvertToHTML::convertPlatformMapping(), SDFconvertToHTML::convertPlatformMappingToPNG(), FSMSADF::OutputHTML::convertScenarioGraphToPNG(), SDFconvertToHTML::convertSDFgraph(), SDFconvertToHTML::convertSDFgraphToPNG(), convertSDFGtoCSDFG(), MaxPlusAnalysis::Exploration::convertToHSDFByMP(), SDFgraph::createActor(), TimedSDFgraph::createActor(), FSMSADF::ScenarioGraph::createActor(), CSDFgraph::createActor(), TimedCSDFgraph::createActor(), SDFgraph::createChannel(), TimedSDFgraph::createChannel(), FSMSADF::ScenarioGraph::createChannel(), CSDFgraph::createChannel(), TimedCSDFgraph::createChannel(), createChannel(), FSMSADF::RandomGraph::createChannel(), PlatformGraph::createConnection(), FSMSADF::PlatformGraph::createConnection(), createCSDFnode(), createCSDFpropertiesNode(), createDependencyNode(), createInitialMCMgraph(), BindingAwareSDFG::createMappedActorMPFlow(), BindingAwareSDFG::createMappedActorNSoC(), FSMSADF::BindingAwareGraph::createMappedActorNSoC(), BindingAwareSDFG::createMappedChannelToConnectionNSoC(), createMappingNode(), createPlatformGraphNode(), SDFactor::createPort(), FSMSADF::Actor::createPort(), CSDFactor::createPort(), createSDFnode(), createSDFpropertiesNode(), CSequence< CSDFtime >::CSequence(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::dfsVisitDependencies(), dfsVisitDependencies(), SDFstateSpaceBufferAnalysis::TransitionSystem::dfsVisitDependencies(), CSDFstateSpaceBufferAnalysis::TransitionSystem::dfsVisitDependencies(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::dfsVisitDependencies(), distributeInitialTokens(), distributeInitialTokensInComponent(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::endActorFiring(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::endActorFiring(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::endActorFiring(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::endActorFiring(), SDFstateSpaceThroughputAnalysis::TransitionSystem::endActorFiring(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::endActorFiring(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::endActorFiring(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::endActorFiring(), SDFstateSpacePriorityListScheduler::TransitionSystem::endActorFiring(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::endActorFiring(), SDFstateSpaceListScheduler::TransitionSystem::endActorFiring(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::endActorFiring(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::endActorFiring(), endActorFiring(), SDFstateSpaceBufferAnalysis::TransitionSystem::endActorFiring(), CSDFstateSpaceBufferAnalysis::TransitionSystem::endActorFiring(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::endActorFiring(), FSMSADF::GraphConversion::ensureStronglyBounded(), SDF3Flow::estimateBandwidthConstraints(), SDF3Flow::estimateLatencyConstraints(), LoadBalanceBinding::estimateMaxCycleMean(), SDF3Flow::estimateStorageConstraints(), FSMSADF::MemoryDimAlgo::estimateStorageDist(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::execConstrainedSDFgraph(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::execCSDFgraph(), CSDFstateSpaceBufferAnalysis::TransitionSystem::execCSDFgraph(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::execSDFgraph(), SDFstateSpaceThroughputAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpacePriorityListScheduler::TransitionSystem::execSDFgraph(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceListScheduler::TransitionSystem::execSDFgraph(), SDFstateSpaceDeadlockAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::execSDFgraph(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::execSDFgraph(), execSDFgraph(), SDFstateSpaceBufferAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::execSDFgraph(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::execSDFgraphComputeSchedule(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::execSDFgraphSelfTimed(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::execSDFgraphSelfTimed(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::execSDFgraphStaticPeriodic(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::execSDFgraphStaticPeriodic(), SDFstateSpaceBufferAnalysisNingGao::execStorageDistribution(), execStorageDistribution(), SDFstateSpaceBufferAnalysis::execStorageDistribution(), CSDFstateSpaceBufferAnalysis::execStorageDistribution(), SDFstateSpaceBindingAwareBufferAnalysis::execStorageDistribution(), SDFstateSpaceBufferAnalysisNingGao::exploreStorageDistribution(), exploreStorageDistribution(), SDFstateSpaceBufferAnalysis::exploreStorageDistribution(), CSDFstateSpaceBufferAnalysis::exploreStorageDistribution(), SDFstateSpaceBindingAwareBufferAnalysis::exploreStorageDistribution(), FSMSADF::GraphBinding::extractApplicationBindingFromPlatformBinding(), BindingAwareSDFG::extractChannelMapping(), FSMSADF::BindingAwareGraph::extractChannelMapping(), FSMSADF::ScenarioGraph::extractSDFgraph(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::findCausalDependencies(), findCausalDependencies(), SDFstateSpaceBufferAnalysis::TransitionSystem::findCausalDependencies(), CSDFstateSpaceBufferAnalysis::TransitionSystem::findCausalDependencies(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::findCausalDependencies(), FSMSADF::RandomGraph::findCycles(), findMinimalStorageDistributions(), SDFstateSpaceBufferAnalysis::findMinimalStorageDistributions(), CSDFstateSpaceBufferAnalysis::findMinimalStorageDistributions(), SDFstateSpaceBindingAwareBufferAnalysis::findMinimalStorageDistributions(), SDFstateSpaceBufferAnalysis::findNextStorageDistributionSet(), CSDFstateSpaceBufferAnalysis::findNextStorageDistributionSet(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::findStorageDependencies(), findStorageDependencies(), SDFstateSpaceBufferAnalysis::TransitionSystem::findStorageDependencies(), CSDFstateSpaceBufferAnalysis::TransitionSystem::findStorageDependencies(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::findStorageDependencies(), fireActor(), SDFstateSpaceDeadlockAnalysis::TransitionSystem::fireActor(), Free_Memory(), MaxPlusAnalysis::State::fromVector(), FSMSADF::MPExplore::State::fromVector(), generateSDFgraphProperties(), FSMSADF::MemoryBinding::getAllocatedMemorySize(), SDFgraph::getChannel(), FSMSADF::ScenarioGraph::getChannel(), CSDFgraph::getChannel(), FSMSADF::RandomGraph::getChannelsBetweenActors(), PlatformGraph::getConnection(), PlatformGraph::getConnections(), getLbDistributionSz(), CSDFgraph::getRepetitionVector(), getUbDistributionSz(), MaxPlusAnalysis::GraphDecoration::Graph::Graph(), SDF3Flow::handleUserInteraction(), FSMSADF::SDF3Flow::handleUserInteraction(), hapiActorConstructor(), hapiActorDeclaration(), hapiActorMain(), hapiNetworkConstructor(), hapiNetworkDeclaration(), FSMSADF::ScenarioGraph::hasChannel(), Init_Improve(), initDependencies(), Initial_Policy(), SDFstateSpaceBufferAnalysis::initLbDistributionSz(), CSDFstateSpaceBufferAnalysis::initLbDistributionSz(), SDFstateSpaceBindingAwareBufferAnalysis::initLbDistributionSz(), SDFstateSpaceBufferAnalysis::initMinimalChannelSz(), CSDFstateSpaceBufferAnalysis::initMinimalChannelSz(), SDFstateSpaceBindingAwareBufferAnalysis::initMinimalChannelSz(), SDFstateSpaceBufferAnalysis::initMinimalChannelSzStep(), SDFstateSpaceBindingAwareBufferAnalysis::initMinimalChannelSzStep(), SDFstateSpaceBufferAnalysis::initSearch(), CSDFstateSpaceBufferAnalysis::initSearch(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::initTracing(), isActorReady(), CSDFgraph::isConnected(), FSMSADF::ScenarioGraph::isolateScenario(), isStronglyConnectedGraph(), MaxPlus::Matrix::largestFiniteElement(), makeConsistentConnectedActors(), makeSimpleGraph(), makeStronglyConnected(), MaxPlus::Matrix::maximum(), LoadBalanceBinding::memLoadChannelsOnTile(), MaxPlus::Matrix::minimalFiniteElement(), LoadBalanceBinding::minimizeStorageSpace(), modelAutoConcurrencyInSDFgraph(), BindingAwareSDFG::modelBindingInMPFlow(), BindingAwareSDFG::modelBindingInNSoCFlow(), FSMSADF::BindingAwareGraph::modelBindingInNSoCFlow(), modelBufferSizeInSDFgraph(), modelCapacityConstrainedBuffer(), New_Depth_First_Label(), LoadBalanceBinding::nrChannelsMappedToConnection(), SDFconvertToHTML::outputPlatformGraphAsDot(), SDFconvertToHTML::outputPlatformMappingAsDot(), outputSDFasDot(), SDFconvertToHTML::outputSDFgraphAsDot(), parseSwitchArgument(), FSMSADF::PrecedenceGraph::PrecedenceGraph(), SDFgraph::print(), TimedSDFgraph::print(), FSMSADF::ScenarioGraph::print(), CSDFgraph::print(), TimedCSDFgraph::print(), printDefinitions(), printMaximumChannelSz(), printMinimalChannelSz(), printMinimalChannelSzStep(), FSMSADF::OutputHTML::printPlatformBinding(), FSMSADF::OutputHTML::printPlatformGraph(), FSMSADF::OutputHTML::printScenario(), MaxPlusAnalysis::SymbolicState::produce(), MaxPlusAnalysis::State::produce(), FSMSADF::MPExploreBindingAware::State::produce(), FSMSADF::MPExplore::State::produce(), MaxPlusAnalysis::State::produce_front(), randomChannelBufferSizes(), relabelSDFgraph(), SDFgraph::removeChannel(), FSMSADF::ScenarioGraph::removeChannel(), CSDFgraph::removeChannel(), reverseChannelsInSDFgraph(), FSMSADF::RandomGraph::selectInitialTokenChannels(), setMappingPlatformGraph(), FSMSADF::MPExploreBindingAware::SGraph::SGraph(), FSMSADF::MPExplore::SGraph::SGraph(), SHIFTDOWN(), LoadBalanceBinding::sortTilesOnCommunicationOverhead(), SDFstateSpaceBindingAwareThroughputAnalysis::TransitionSystem::startActorFiring(), SDFstateSpaceStaticPeriodicSchedulerChao::TransitionSystem::startActorFiring(), SDFstateSpaceStaticPeriodicScheduler::TransitionSystem::startActorFiring(), SDFstateSpaceThroughputAnalysisNingGao::TransitionSystem::startActorFiring(), SDFstateSpaceThroughputAnalysis::TransitionSystem::startActorFiring(), CSDFstateSpaceThroughputAnalysis::TransitionSystem::startActorFiring(), SDFstateSpaceSelfTimedMinimalLatencyAnalysis::TransitionSystem::startActorFiring(), SDFstateSpaceSelfTimedLatencyAnalysis::TransitionSystem::startActorFiring(), SDFstateSpacePriorityListScheduler::TransitionSystem::startActorFiring(), SDFstateSpaceMinimalLatencyAnalysis::TransitionSystem::startActorFiring(), SDFstateSpaceListScheduler::TransitionSystem::startActorFiring(), SDFstateSpaceTraceInterconnectCommunication::TransitionSystem::startActorFiring(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::startActorFiring(), startActorFiring(), SDFstateSpaceBufferAnalysis::TransitionSystem::startActorFiring(), CSDFstateSpaceBufferAnalysis::TransitionSystem::startActorFiring(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::startActorFiring(), transformGraph(), transformHSDFtoAPG(), transformSDFtoHSDF(), unfoldHSDF(), Update_Policy(), LoadBalanceBinding::updateStorageSpaceAllocation(), Visit_From(), MaxPlusAnalysis::State::zeroScheduleState(), FSMSADF::MPExplore::State::zeroScheduleState(), MaxPlusAnalysis::SymbolicState::zeroState(), MaxPlusAnalysis::State::zeroState(), FSMSADF::MPExplore::State::zeroState(), CSDFgraph::~CSDFgraph(), PlatformGraph::~PlatformGraph(), FSMSADF::ScenarioGraph::~ScenarioGraph(), and SDFgraph::~SDFgraph().
double* chi [static] |
int color = 1 [static] |
Referenced by FSMSADF::MPExploreStateSpace::StateSpaceExploration::computeThroughput(), dfs(), dfsMCMgraph(), findSimpleCycle(), findSimpleCycles(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::findStorageDependencies(), findStorageDependencies(), SDFstateSpaceBufferAnalysis::TransitionSystem::findStorageDependencies(), CSDFstateSpaceBufferAnalysis::TransitionSystem::findStorageDependencies(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::findStorageDependencies(), SDFstateSpacePriorityListScheduler::TransitionSystem::initActorPriorities(), isConnected(), mcmSimpleCycles(), New_Depth_First_Label(), FSMSADF::RandomGraph::selectInitialTokenChannels(), and Value().
int* component = NULL [static] |
Referenced by Allocate_Memory(), SDFgraph::clone(), TimedSDFgraph::clone(), FSMSADF::ScenarioGraph::clone(), CSDFgraph::clone(), TimedCSDFgraph::clone(), SDFactor::clone(), TimedSDFactor::clone(), CSDFactor::clone(), TimedCSDFactor::clone(), SDFgraph::construct(), constructCSDFgraph(), FSMSADF::Actor::constructFromXML(), constructPlatformGraph(), constructTimedCSDFgraphStructure(), convertSDFGtoCSDFG(), MaxPlusAnalysis::Exploration::convertToHSDFByMP(), createActor(), createAcyclicGraph(), createChannel(), PlatformGraph::createConnection(), FSMSADF::Graph::createDefaultScenario(), createGraph(), Tile::createMemory(), Tile::createNetworkInterface(), Tile::createProcessor(), PlatformGraph::createTile(), FSMSADF::ScenarioGraph::extractSDFgraph(), Free_Memory(), Init_Depth_First(), isAcyclic(), mcmSimpleCycles(), BindingAwareSDFG::modelBindingInMPFlow(), BindingAwareSDFG::modelBindingInNSoCFlow(), New_Depth_First_Label(), randomThroughputConstraint(), transformGraph(), transformSDFtoHSDF(), unfoldHSDF(), Value(), and Visit_From().
double epsilon = 0 [static] |
Referenced by Howard(), and Second_Order_Improvement().
int* ij [static] |
Referenced by Check_Rows(), First_Order_Improvement(), Import_Arguments(), Initial_Policy(), and Second_Order_Improvement().
double lambda = 0 [static] |
int narcs [static] |
Referenced by Check_Rows(), First_Order_Improvement(), Howard(), Import_Arguments(), Initial_Policy(), Second_Order_Improvement(), and Security_Check().
int* NComponents [static] |
Referenced by Import_Arguments(), Improve(), Second_Order_Improvement(), and Value().
double* newc = NULL [static] |
Referenced by Allocate_Memory(), First_Order_Improvement(), Free_Memory(), Init_Improve(), Second_Order_Improvement(), and Update_Policy().
double* newchi = NULL [static] |
Referenced by Allocate_Memory(), First_Order_Improvement(), Free_Memory(), Init_Improve(), and Second_Order_Improvement().
int* newpi = NULL [static] |
Referenced by Allocate_Memory(), First_Order_Improvement(), Free_Memory(), Init_Improve(), Second_Order_Improvement(), and Update_Policy().
int* NIterations [static] |
Referenced by End_Message(), Howard(), and Import_Arguments().
int nnodes [static] |
int* pi [static] |
Referenced by addLongestDelayEdgeForNode(), createAcyclicGraph(), FSMSADF::RandomGraph::createChannel(), createGraph(), findSimpleCycle(), findSimpleCycles(), SDFstateSpaceBufferAnalysisNingGao::TransitionSystem::findStorageDependencies(), findStorageDependencies(), SDFstateSpaceBufferAnalysis::TransitionSystem::findStorageDependencies(), CSDFstateSpaceBufferAnalysis::TransitionSystem::findStorageDependencies(), SDFstateSpaceBindingAwareBufferAnalysis::TransitionSystem::findStorageDependencies(), MaxPlusAnalysis::GraphDecoration::Graph::Graph(), Import_Arguments(), Init_Improve(), SDFstateSpacePriorityListScheduler::TransitionSystem::initActorPriorities(), Initial_Policy(), mcmDG(), mcmSimpleCycles(), New_Build_Inverse(), stronglyConnectedComponents(), stronglyConnectedMCMgraph(), Update_Policy(), and Visit_From().
int* piinv_elem = NULL [static] |
Referenced by Allocate_Memory(), Free_Memory(), New_Build_Inverse(), and New_Depth_First_Label().
int* piinv_idx = NULL [static] |
Referenced by Allocate_Memory(), Free_Memory(), New_Build_Inverse(), and New_Depth_First_Label().
int* piinv_last = NULL [static] |
Referenced by Allocate_Memory(), Free_Memory(), and New_Build_Inverse().
int* piinv_succ = NULL [static] |
Referenced by Allocate_Memory(), Free_Memory(), New_Build_Inverse(), and New_Depth_First_Label().
double* v [static] |
Referenced by addLongestDelayEdgeForNode(), FSMSADF::MPExploreStateSpace::State::addReachableState(), MaxPlus::Matrix::allPairLongestPathMatrix(), analyzeSDFG(), MaxPlusAnalysis::State::asStdVector(), MaxPlusAnalysis::State::asVector(), FSMSADF::MPExplore::State::asVector(), componentToCSDFgraph(), componentToSDFgraph(), FSMSADF::computeMCMfsm(), SDFstateSpaceStaticPeriodicSchedulerChao::computeSchedule(), connectedVisit(), convertMCMgraphToYTOgraph(), dfsVisit(), FSMSADF::RandomGraph::findCycles(), getAdjacentActors(), MaxPlus::Matrix::getSubMatrix(), MaxPlusAnalysis::GraphDecoration::Graph::Graph(), Import_Arguments(), Init_Improve(), makeStronglyConnected(), maximumCycleMeanCycle(), mcmDG(), mcmGetAdjacentActors(), mcmHoward(), mcmKarp(), New_Depth_First_Label(), FSMSADF::PrecedenceGraph::PrecedenceGraph(), sdfComponentToGraph(), sdfToGraph(), Second_Order_Improvement(), MaxPlus::VectorList::toString(), treeVisitChildren(), Update_Policy(), and Visit_From().
double* vaux = NULL [static] |
Referenced by Allocate_Memory(), Free_Memory(), Init_Improve(), Initial_Policy(), Second_Order_Improvement(), Update_Policy(), and Visit_From().
int* visited = NULL [static] |
Referenced by Allocate_Memory(), Free_Memory(), Init_Depth_First(), and New_Depth_First_Label().