1 #ifndef GAUDIHIVE_PRECEDENCESVC_H_ 2 #define GAUDIHIVE_PRECEDENCESVC_H_ 11 #include <boost/filesystem.hpp> 83 "Dump task precedence traces for each event."};
85 this,
"PrecedenceTraceFile",
"",
"Override default name of the GRAPHML trace file. NOTE: if more than " 86 "1 event is processed, the setting forces creation of a single file " 87 "with cumulative precedence trace."};
90 "Override default name of the GRAPHML precedence rules file."};
const concurrency::PrecedenceRulesGraph * getRules() const
Precedence rules accessor.
Gaudi::Property< bool > m_dumpPrecTrace
concurrency::PrecedenceRulesGraph m_PRGraph
Graph of precedence rules.
void dumpPrecedenceRules(EventSlot &) override
Dump precedence rules (available only in DEBUG mode, and must be enabled with the corresponding servi...
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
const std::string & name() const override
Retrieve name of the service.
void dumpDataFlow() const override
Implementation of property with value of concrete type.
StatusCode assembleCFRules(Algorithm *, const std::string &, unsigned int recursionDepth=0)
A service to resolve the task execution precedence.
boost::filesystem::path m_dumpDirName
Precedence analysis facilities.
bool isIOBound() const
Check if algorithm is I/O-bound.
Gaudi::Property< bool > m_ignoreDFRules
Scheduling strategy.
StatusCode iterate(EventSlot &, const Cause &) override
Infer the precedence effect caused by an execution flow event.
Gaudi::Property< std::string > m_dumpPrecRulesFile
SmartIF< IAlgResourcePool > m_algResourcePool
A shortcut to the algorithm resource pool.
const float & getRank() const
Get Algorithm rank.
uint getPriority(const std::string &name) const override
Get priority of an algorithm.
StatusCode finalize() override
Finalize.
This class is used for returning status codes from appropriate routines.
Gaudi::Property< std::string > m_mode
Scheduling strategy.
PrecedenceSvc(const std::string &name, ISvcLocator *svcLoc)
Constructor.
void dumpPrecedenceTrace(EventSlot &) override
Dump precedence trace (available only in DEBUG mode, and must be enabled with the corresponding servi...
bool CFRulesResolved(EventSlot &) const override
Check if the root CF decision is resolved.
StatusCode simulate(EventSlot &) const override
Simulate execution flow.
Base class from which all concrete algorithm classes should be derived.
Base class used to extend a class implementing other interfaces.
Gaudi::Property< bool > m_dumpPrecRules
Class representing the event slot.
bool isBlocking(const std::string &name) const override
Check if a task is CPU-blocking.
Gaudi::Property< std::string > m_dumpPrecTraceFile
const std::string printState(EventSlot &) const override
void dumpControlFlow() const override
Dump precedence rules.
AlgorithmNode * getAlgorithmNode(const std::string &algoName) const
Get the AlgorithmNode from by algorithm name using graph index.
SmartIF< ISvcLocator > & serviceLocator() const override
Retrieve pointer to service locator.
StatusCode initialize() override
Initialize.