CMS 3D CMS Logo

Functions
SystemTimeKeeper.cc File Reference
#include <algorithm>
#include "FWCore/Utilities/interface/StreamID.h"
#include "FWCore/ServiceRegistry/interface/StreamContext.h"
#include "FWCore/ServiceRegistry/interface/PathContext.h"
#include "FWCore/ServiceRegistry/interface/PlaceInPathContext.h"
#include "FWCore/ServiceRegistry/interface/ModuleCallingContext.h"
#include "DataFormats/Provenance/interface/ModuleDescription.h"
#include "DataFormats/Common/interface/HLTPathStatus.h"
#include "FWCore/Framework/src/TriggerTimingReport.h"
#include "FWCore/Framework/interface/TriggerNamesService.h"
#include "FWCore/Utilities/interface/Algorithms.h"
#include "SystemTimeKeeper.h"

Go to the source code of this file.

Functions

static void fillPathSummary (unsigned int iStartIndex, unsigned int iEndIndex, std::vector< std::string > const &iPathNames, std::vector< std::vector< std::string >> const &iModulesOnPaths, std::vector< std::vector< SystemTimeKeeper::PathTiming >> const &iPathTimings, std::vector< PathTimingSummary > &iSummary)
 

Function Documentation

◆ fillPathSummary()

static void fillPathSummary ( unsigned int  iStartIndex,
unsigned int  iEndIndex,
std::vector< std::string > const &  iPathNames,
std::vector< std::vector< std::string >> const &  iModulesOnPaths,
std::vector< std::vector< SystemTimeKeeper::PathTiming >> const &  iPathTimings,
std::vector< PathTimingSummary > &  iSummary 
)
static

Definition at line 209 of file SystemTimeKeeper.cc.

214  {
215  iSummary.resize(iEndIndex - iStartIndex);
216 
217  for (auto const& stream : iPathTimings) {
218  auto it = iSummary.begin();
219  for (unsigned int index = iStartIndex; index < iEndIndex; ++index, ++it) {
220  auto const& pathTiming = stream[index];
221  it->name = iPathNames[index];
222  it->bitPosition = index - iStartIndex;
223  if (not pathTiming.m_moduleTiming.empty()) {
224  it->timesRun += pathTiming.m_moduleTiming[0].m_timesVisited;
225  }
226  it->realTime += pathTiming.m_timer.realTime();
227  if (it->moduleInPathSummaries.empty()) {
228  it->moduleInPathSummaries.resize(pathTiming.m_moduleTiming.size());
229  }
230  for (unsigned int modIndex = 0; modIndex < pathTiming.m_moduleTiming.size(); ++modIndex) {
231  auto const& modTiming = pathTiming.m_moduleTiming[modIndex];
232  auto& modSummary = it->moduleInPathSummaries[modIndex];
233  if (modSummary.moduleLabel.empty()) {
234  modSummary.moduleLabel = iModulesOnPaths[index][modIndex];
235  }
236  modSummary.timesVisited += modTiming.m_timesVisited;
237  modSummary.realTime += modTiming.m_realTime;
238  }
239  }
240  }
241 }

References cms::cuda::stream.

cms::cuda::stream
uint32_t const T *__restrict__ const uint32_t *__restrict__ int32_t int Histo::index_type cudaStream_t stream
Definition: HistoContainer.h:51
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46