#include <ProcessCallGraph.h>
Classes | |
struct | NodeType |
struct | PathType |
struct | ProcessType |
Public Types | |
using | GraphType = boost::subgraph< boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS, NodeType, boost::property< boost::edge_index_t, int >, boost::property< boost::graph_name_t, std::string > >> |
Public Member Functions | |
std::pair< std::vector< unsigned int >, std::vector< unsigned int > > | dependencies (std::vector< unsigned int > const &path) |
std::vector< unsigned int > | depends (unsigned int module) const |
edm::ModuleDescription const & | module (unsigned int module) const |
NodeType const & | operator[] (unsigned int module) const |
void | preBeginJob (edm::PathsAndConsumesOfModulesBase const &, edm::ProcessContext const &) |
void | preSourceConstruction (edm::ModuleDescription const &) |
ProcessCallGraph () | |
ProcessType const & | processDescription (unsigned int) const |
ProcessType const & | processDescription (edm::ProcessContext const &) const |
ProcessType const & | processDescription (std::string const &) const |
std::vector< ProcessType > const & | processes () const |
unsigned int | processId (edm::ProcessContext const &) const |
unsigned int | processId (std::string const &) const |
unsigned int | size () const |
edm::ModuleDescription const & | source () const |
Private Member Functions | |
unsigned int | registerProcess (edm::ProcessContext const &) |
Private Attributes | |
GraphType | graph_ |
std::vector< ProcessType > | process_description_ |
std::unordered_map< std::string, unsigned int > | process_id_ |
unsigned int | source_ |
Definition at line 27 of file ProcessCallGraph.h.
using ProcessCallGraph::GraphType = boost::subgraph<boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS, NodeType, boost::property<boost::edge_index_t, int>, boost::property<boost::graph_name_t, std::string> >> |
Definition at line 49 of file ProcessCallGraph.h.
|
default |
Referenced by ProcessCallGraph::ProcessType::ProcessType().
std::pair< std::vector< unsigned int >, std::vector< unsigned int > > ProcessCallGraph::dependencies | ( | std::vector< unsigned int > const & | path | ) |
Definition at line 218 of file ProcessCallGraph.cc.
References create_public_lumi_plots::color, colors, symbols::dependencies, findQualityFiles::size, and electrons_cff::vertices.
Referenced by ProcessCallGraph::ProcessType::ProcessType().
std::vector< unsigned int > ProcessCallGraph::depends | ( | unsigned int | module | ) | const |
Definition at line 187 of file ProcessCallGraph.cc.
References create_public_lumi_plots::color, colors, symbols::dependencies, mps_fire::i, and findQualityFiles::size.
Referenced by ProcessCallGraph::ProcessType::ProcessType().
edm::ModuleDescription const & ProcessCallGraph::module | ( | unsigned int | module | ) | const |
Definition at line 171 of file ProcessCallGraph.cc.
References python.rootplot.argparse::module.
Referenced by FastTimerService::PlotsPerJob::book(), FastTimerService::postBeginJob(), FastTimerService::printEvent(), FastTimerService::printSummary(), ProcessCallGraph::ProcessType::ProcessType(), and FastTimerService::queryModuleTimeByLabel().
ProcessCallGraph::NodeType const & ProcessCallGraph::operator[] | ( | unsigned int | module | ) | const |
Definition at line 179 of file ProcessCallGraph.cc.
References python.rootplot.argparse::module.
Referenced by ProcessCallGraph::ProcessType::ProcessType().
void ProcessCallGraph::preBeginJob | ( | edm::PathsAndConsumesOfModulesBase const & | pathsAndConsumes, |
edm::ProcessContext const & | context | ||
) |
Definition at line 73 of file ProcessCallGraph.cc.
References edm::PathsAndConsumesOfModulesBase::allModules(), symbols::dependencies, symbols::deps, edm::edmModuleTypeEnum(), edm::PathsAndConsumesOfModulesBase::endPaths(), mps_fire::i, edm::ProcessContext::isSubProcess(), python.rootplot.argparse::module, electrons_cff::modules, edm::PathsAndConsumesOfModulesBase::modulesOnEndPath(), edm::PathsAndConsumesOfModulesBase::modulesOnPath(), edm::PathsAndConsumesOfModulesBase::modulesWhoseProductsAreConsumedBy(), edm::ProcessContext::parentProcessContext(), edm::PathsAndConsumesOfModulesBase::paths(), sysUtil::pid, edm::ProcessContext::processName(), and findQualityFiles::size.
Referenced by FastTimerService::preBeginJob(), and ProcessCallGraph::ProcessType::ProcessType().
void ProcessCallGraph::preSourceConstruction | ( | edm::ModuleDescription const & | module | ) |
Definition at line 57 of file ProcessCallGraph.cc.
References edm::ModuleDescription::id(), edm::kSource, and python.rootplot.argparse::module.
Referenced by FastTimerService::preSourceConstruction(), and ProcessCallGraph::ProcessType::ProcessType().
ProcessCallGraph::ProcessType const & ProcessCallGraph::processDescription | ( | unsigned int | pid | ) | const |
Definition at line 325 of file ProcessCallGraph.cc.
Referenced by FastTimerService::PlotsPerJob::book(), FastTimerService::PlotsPerJob::fill(), FastTimerService::postEvent(), FastTimerService::postPathEvent(), FastTimerService::printEvent(), FastTimerService::printSummary(), ProcessCallGraph::ProcessType::ProcessType(), FastTimerService::queryModuleTimeByLabel(), and FastTimerService::queryPathTime().
ProcessCallGraph::ProcessType const & ProcessCallGraph::processDescription | ( | edm::ProcessContext const & | context | ) | const |
Definition at line 332 of file ProcessCallGraph.cc.
References sysUtil::pid.
ProcessCallGraph::ProcessType const & ProcessCallGraph::processDescription | ( | std::string const & | processName | ) | const |
Definition at line 340 of file ProcessCallGraph.cc.
References sysUtil::pid.
std::vector< ProcessCallGraph::ProcessType > const & ProcessCallGraph::processes | ( | ) | const |
Definition at line 318 of file ProcessCallGraph.cc.
Referenced by FastTimerService::PlotsPerJob::book(), FastTimerService::isLastSubprocess(), FastTimerService::PlotsPerJob::PlotsPerJob(), FastTimerService::printEvent(), FastTimerService::printSummary(), ProcessCallGraph::ProcessType::ProcessType(), FastTimerService::queryPathTime(), and FastTimerService::ResourcesPerJob::ResourcesPerJob().
unsigned int ProcessCallGraph::processId | ( | edm::ProcessContext const & | context | ) | const |
Definition at line 295 of file ProcessCallGraph.cc.
References edm::ProcessContext::isSubProcess(), edm::errors::LogicError, and edm::ProcessContext::processName().
Referenced by FastTimerService::postEvent(), FastTimerService::postPathEvent(), FastTimerService::prePathEvent(), ProcessCallGraph::ProcessType::ProcessType(), FastTimerService::queryEventTime(), and FastTimerService::queryPathTime().
unsigned int ProcessCallGraph::processId | ( | std::string const & | processName | ) | const |
Definition at line 307 of file ProcessCallGraph.cc.
References edm::errors::LogicError, and modifiedElectrons_cfi::processName.
|
private |
Definition at line 269 of file ProcessCallGraph.cc.
References Exception, SequenceTypes::ignore(), edm::ProcessContext::isSubProcess(), edm::errors::LogicError, edm::ProcessContext::parentProcessContext(), edm::ProcessContext::processName(), and s_id.
Referenced by ProcessCallGraph::ProcessType::ProcessType().
unsigned int ProcessCallGraph::size | ( | void | ) | const |
Definition at line 155 of file ProcessCallGraph.cc.
Referenced by ntupleDataFormat._Collection::__iter__(), ntupleDataFormat._Collection::__len__(), FastTimerService::postBeginJob(), ProcessCallGraph::ProcessType::ProcessType(), FastTimerService::queryModuleTime(), and FastTimerService::queryModuleTimeByLabel().
edm::ModuleDescription const & ProcessCallGraph::source | ( | ) | const |
Definition at line 163 of file ProcessCallGraph.cc.
Referenced by FastTimerService::PlotsPerJob::book(), FastTimerService::postSourceEvent(), FastTimerService::printEvent(), FastTimerService::printSummary(), ProcessCallGraph::ProcessType::ProcessType(), and FastTimerService::querySourceTime().
|
private |
Definition at line 180 of file ProcessCallGraph.h.
Referenced by ProcessCallGraph::ProcessType::ProcessType().
|
private |
Definition at line 189 of file ProcessCallGraph.h.
|
private |
Definition at line 186 of file ProcessCallGraph.h.
|
private |
Definition at line 183 of file ProcessCallGraph.h.
Referenced by Config.Process::dumpConfig(), and Config.Process::dumpPython().