CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends
NVProfilerService Class Reference

Classes

struct  Domains
 

Public Member Functions

 NVProfilerService (const edm::ParameterSet &, edm::ActivityRegistry &)
 
void postBeginJob ()
 
void postCloseFile (std::string const &, bool)
 
void postEndJob ()
 
void postEvent (edm::StreamContext const &)
 
void postEventReadFromSource (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postGlobalBeginLumi (edm::GlobalContext const &)
 
void postGlobalBeginRun (edm::GlobalContext const &)
 
void postGlobalEndLumi (edm::GlobalContext const &)
 
void postGlobalEndRun (edm::GlobalContext const &)
 
void postModuleBeginJob (edm::ModuleDescription const &)
 
void postModuleBeginStream (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleConstruction (edm::ModuleDescription const &)
 
void postModuleEndJob (edm::ModuleDescription const &)
 
void postModuleEndStream (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleEvent (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleEventDelayedGet (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleEventPrefetching (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleGlobalBeginLumi (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void postModuleGlobalBeginRun (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void postModuleGlobalEndLumi (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void postModuleGlobalEndRun (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void postModuleStreamBeginLumi (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleStreamBeginRun (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleStreamEndLumi (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postModuleStreamEndRun (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void postOpenFile (std::string const &, bool)
 
void postPathEvent (edm::StreamContext const &, edm::PathContext const &, edm::HLTPathStatus const &)
 
void postSourceConstruction (edm::ModuleDescription const &)
 
void postSourceEvent (edm::StreamID)
 
void postSourceLumi (edm::LuminosityBlockIndex)
 
void postSourceRun (edm::RunIndex)
 
void postStreamBeginLumi (edm::StreamContext const &)
 
void postStreamBeginRun (edm::StreamContext const &)
 
void postStreamEndLumi (edm::StreamContext const &)
 
void postStreamEndRun (edm::StreamContext const &)
 
void preallocate (edm::service::SystemBounds const &)
 
void preBeginJob (edm::PathsAndConsumesOfModulesBase const &, edm::ProcessContext const &)
 
void preCloseFile (std::string const &, bool)
 
void preEvent (edm::StreamContext const &)
 
void preEventReadFromSource (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preGlobalBeginLumi (edm::GlobalContext const &)
 
void preGlobalBeginRun (edm::GlobalContext const &)
 
void preGlobalEndLumi (edm::GlobalContext const &)
 
void preGlobalEndRun (edm::GlobalContext const &)
 
void preModuleBeginJob (edm::ModuleDescription const &)
 
void preModuleBeginStream (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleConstruction (edm::ModuleDescription const &)
 
void preModuleEndJob (edm::ModuleDescription const &)
 
void preModuleEndStream (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleEvent (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleEventDelayedGet (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleEventPrefetching (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleGlobalBeginLumi (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void preModuleGlobalBeginRun (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void preModuleGlobalEndLumi (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void preModuleGlobalEndRun (edm::GlobalContext const &, edm::ModuleCallingContext const &)
 
void preModuleStreamBeginLumi (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleStreamBeginRun (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleStreamEndLumi (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preModuleStreamEndRun (edm::StreamContext const &, edm::ModuleCallingContext const &)
 
void preOpenFile (std::string const &, bool)
 
void prePathEvent (edm::StreamContext const &, edm::PathContext const &)
 
void preSourceConstruction (edm::ModuleDescription const &)
 
void preSourceEvent (edm::StreamID)
 
void preSourceLumi (edm::LuminosityBlockIndex)
 
void preSourceRun (edm::RunIndex)
 
void preStreamBeginLumi (edm::StreamContext const &)
 
void preStreamBeginRun (edm::StreamContext const &)
 
void preStreamEndLumi (edm::StreamContext const &)
 
void preStreamEndRun (edm::StreamContext const &)
 
 ~NVProfilerService ()
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 

Private Member Functions

nvtxDomainHandle_t global_domain ()
 
bool highlight (std::string const &)
 
nvtxDomainHandle_t stream_domain (unsigned int sid)
 

Private Attributes

unsigned int concurrentStreams_
 
tbb::enumerable_thread_specific< Domainsdomains_
 
std::vector< nvtxRangeId_t > event_
 
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
 
std::vector< std::string > highlightModules_
 
bool showModulePrefetching_
 
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
 

Friends

struct Domains
 

Detailed Description

Definition at line 123 of file NVProfilerService.cc.

Constructor & Destructor Documentation

NVProfilerService::NVProfilerService ( const edm::ParameterSet ,
edm::ActivityRegistry  
)

Definition at line 323 of file NVProfilerService.cc.

References highlightModules_, postBeginJob(), postCloseFile(), postEndJob(), postEvent(), postEventReadFromSource(), postGlobalBeginLumi(), postGlobalBeginRun(), postGlobalEndLumi(), postGlobalEndRun(), postModuleBeginJob(), postModuleBeginStream(), postModuleConstruction(), postModuleEndJob(), postModuleEndStream(), postModuleEvent(), postModuleEventDelayedGet(), postModuleEventPrefetching(), postModuleGlobalBeginLumi(), postModuleGlobalBeginRun(), postModuleGlobalEndLumi(), postModuleGlobalEndRun(), postModuleStreamBeginLumi(), postModuleStreamBeginRun(), postModuleStreamEndLumi(), postModuleStreamEndRun(), postOpenFile(), postPathEvent(), postSourceConstruction(), postSourceEvent(), postSourceLumi(), postSourceRun(), postStreamBeginLumi(), postStreamBeginRun(), postStreamEndLumi(), postStreamEndRun(), preallocate(), preBeginJob(), preCloseFile(), preEvent(), preEventReadFromSource(), preGlobalBeginLumi(), preGlobalBeginRun(), preGlobalEndLumi(), preGlobalEndRun(), preModuleBeginJob(), preModuleBeginStream(), preModuleConstruction(), preModuleEndJob(), preModuleEndStream(), preModuleEvent(), preModuleEventDelayedGet(), preModuleEventPrefetching(), preModuleGlobalBeginLumi(), preModuleGlobalBeginRun(), preModuleGlobalEndLumi(), preModuleGlobalEndRun(), preModuleStreamBeginLumi(), preModuleStreamBeginRun(), preModuleStreamEndLumi(), preModuleStreamEndRun(), preOpenFile(), prePathEvent(), preSourceConstruction(), preSourceEvent(), preSourceLumi(), preSourceRun(), preStreamBeginLumi(), preStreamBeginRun(), preStreamEndLumi(), preStreamEndRun(), edm::ActivityRegistry::watchPostBeginJob(), edm::ActivityRegistry::watchPostCloseFile(), edm::ActivityRegistry::watchPostEndJob(), edm::ActivityRegistry::watchPostEvent(), edm::ActivityRegistry::watchPostEventReadFromSource(), edm::ActivityRegistry::watchPostGlobalBeginLumi(), edm::ActivityRegistry::watchPostGlobalBeginRun(), edm::ActivityRegistry::watchPostGlobalEndLumi(), edm::ActivityRegistry::watchPostGlobalEndRun(), edm::ActivityRegistry::watchPostModuleBeginJob(), edm::ActivityRegistry::watchPostModuleBeginStream(), edm::ActivityRegistry::watchPostModuleConstruction(), edm::ActivityRegistry::watchPostModuleEndJob(), edm::ActivityRegistry::watchPostModuleEndStream(), edm::ActivityRegistry::watchPostModuleEvent(), edm::ActivityRegistry::watchPostModuleEventDelayedGet(), edm::ActivityRegistry::watchPostModuleEventPrefetching(), edm::ActivityRegistry::watchPostModuleGlobalBeginLumi(), edm::ActivityRegistry::watchPostModuleGlobalBeginRun(), edm::ActivityRegistry::watchPostModuleGlobalEndLumi(), edm::ActivityRegistry::watchPostModuleGlobalEndRun(), edm::ActivityRegistry::watchPostModuleStreamBeginLumi(), edm::ActivityRegistry::watchPostModuleStreamBeginRun(), edm::ActivityRegistry::watchPostModuleStreamEndLumi(), edm::ActivityRegistry::watchPostModuleStreamEndRun(), edm::ActivityRegistry::watchPostOpenFile(), edm::ActivityRegistry::watchPostPathEvent(), edm::ActivityRegistry::watchPostSourceConstruction(), edm::ActivityRegistry::watchPostSourceEvent(), edm::ActivityRegistry::watchPostSourceLumi(), edm::ActivityRegistry::watchPostSourceRun(), edm::ActivityRegistry::watchPostStreamBeginLumi(), edm::ActivityRegistry::watchPostStreamBeginRun(), edm::ActivityRegistry::watchPostStreamEndLumi(), edm::ActivityRegistry::watchPostStreamEndRun(), edm::ActivityRegistry::watchPreallocate(), edm::ActivityRegistry::watchPreBeginJob(), edm::ActivityRegistry::watchPreCloseFile(), edm::ActivityRegistry::watchPreEvent(), edm::ActivityRegistry::watchPreEventReadFromSource(), edm::ActivityRegistry::watchPreGlobalBeginLumi(), edm::ActivityRegistry::watchPreGlobalBeginRun(), edm::ActivityRegistry::watchPreGlobalEndLumi(), edm::ActivityRegistry::watchPreGlobalEndRun(), edm::ActivityRegistry::watchPreModuleBeginJob(), edm::ActivityRegistry::watchPreModuleBeginStream(), edm::ActivityRegistry::watchPreModuleConstruction(), edm::ActivityRegistry::watchPreModuleEndJob(), edm::ActivityRegistry::watchPreModuleEndStream(), edm::ActivityRegistry::watchPreModuleEvent(), edm::ActivityRegistry::watchPreModuleEventDelayedGet(), edm::ActivityRegistry::watchPreModuleEventPrefetching(), edm::ActivityRegistry::watchPreModuleGlobalBeginLumi(), edm::ActivityRegistry::watchPreModuleGlobalBeginRun(), edm::ActivityRegistry::watchPreModuleGlobalEndLumi(), edm::ActivityRegistry::watchPreModuleGlobalEndRun(), edm::ActivityRegistry::watchPreModuleStreamBeginLumi(), edm::ActivityRegistry::watchPreModuleStreamBeginRun(), edm::ActivityRegistry::watchPreModuleStreamEndLumi(), edm::ActivityRegistry::watchPreModuleStreamEndRun(), edm::ActivityRegistry::watchPreOpenFile(), edm::ActivityRegistry::watchPrePathEvent(), edm::ActivityRegistry::watchPreSourceConstruction(), edm::ActivityRegistry::watchPreSourceEvent(), edm::ActivityRegistry::watchPreSourceLumi(), edm::ActivityRegistry::watchPreSourceRun(), edm::ActivityRegistry::watchPreStreamBeginLumi(), edm::ActivityRegistry::watchPreStreamBeginRun(), edm::ActivityRegistry::watchPreStreamEndLumi(), and edm::ActivityRegistry::watchPreStreamEndRun().

323  :
324  highlightModules_(config.getUntrackedParameter<std::vector<std::string>>("highlightModules")),
325  showModulePrefetching_(config.getUntrackedParameter<bool>("showModulePrefetching")),
327  domains_(this)
328 {
329  std::sort(highlightModules_.begin(), highlightModules_.end());
330 
331  // enables profile collection; if profiling is already enabled, has no effect
332  cudaProfilerStart();
333 
334  registry.watchPreallocate(this, &NVProfilerService::preallocate);
335 
336  // these signal pair are NOT guaranteed to be called by the same thread
337  registry.watchPreBeginJob(this, &NVProfilerService::preBeginJob);
338  registry.watchPostBeginJob(this, &NVProfilerService::postBeginJob);
339 
340  // there is no preEndJob() signal
341  registry.watchPostEndJob(this, &NVProfilerService::postEndJob);
342 
343  // these signal pair are NOT guaranteed to be called by the same thread
344  registry.watchPreGlobalBeginRun(this, &NVProfilerService::preGlobalBeginRun);
345  registry.watchPostGlobalBeginRun(this, &NVProfilerService::postGlobalBeginRun);
346 
347  // these signal pair are NOT guaranteed to be called by the same thread
348  registry.watchPreGlobalEndRun(this, &NVProfilerService::preGlobalEndRun);
349  registry.watchPostGlobalEndRun(this, &NVProfilerService::postGlobalEndRun);
350 
351  // these signal pair are NOT guaranteed to be called by the same thread
352  registry.watchPreStreamBeginRun(this, &NVProfilerService::preStreamBeginRun);
353  registry.watchPostStreamBeginRun(this, &NVProfilerService::postStreamBeginRun);
354 
355  // these signal pair are NOT guaranteed to be called by the same thread
356  registry.watchPreStreamEndRun(this, &NVProfilerService::preStreamEndRun);
357  registry.watchPostStreamEndRun(this, &NVProfilerService::postStreamEndRun);
358 
359  // these signal pair are NOT guaranteed to be called by the same thread
360  registry.watchPreGlobalBeginLumi(this, &NVProfilerService::preGlobalBeginLumi);
361  registry.watchPostGlobalBeginLumi(this, &NVProfilerService::postGlobalBeginLumi);
362 
363  // these signal pair are NOT guaranteed to be called by the same thread
364  registry.watchPreGlobalEndLumi(this, &NVProfilerService::preGlobalEndLumi);
365  registry.watchPostGlobalEndLumi(this, &NVProfilerService::postGlobalEndLumi);
366 
367  // these signal pair are NOT guaranteed to be called by the same thread
368  registry.watchPreStreamBeginLumi(this, &NVProfilerService::preStreamBeginLumi);
369  registry.watchPostStreamBeginLumi(this, &NVProfilerService::postStreamBeginLumi);
370 
371  // these signal pair are NOT guaranteed to be called by the same thread
372  registry.watchPreStreamEndLumi(this, &NVProfilerService::preStreamEndLumi);
373  registry.watchPostStreamEndLumi(this, &NVProfilerService::postStreamEndLumi);
374 
375  // these signal pair are NOT guaranteed to be called by the same thread
376  registry.watchPreEvent(this, &NVProfilerService::preEvent);
377  registry.watchPostEvent(this, &NVProfilerService::postEvent);
378 
379  // these signal pair are NOT guaranteed to be called by the same thread
380  registry.watchPrePathEvent(this, &NVProfilerService::prePathEvent);
381  registry.watchPostPathEvent(this, &NVProfilerService::postPathEvent);
382 
383  // these signal pair are NOT guaranteed to be called by the same thread
384  registry.watchPreModuleEventPrefetching(this, &NVProfilerService::preModuleEventPrefetching);
385  registry.watchPostModuleEventPrefetching(this, &NVProfilerService::postModuleEventPrefetching);
386 
387  // these signal pair are guaranteed to be called by the same thread
388  registry.watchPreOpenFile(this, &NVProfilerService::preOpenFile);
389  registry.watchPostOpenFile(this, &NVProfilerService::postOpenFile);
390 
391  // these signal pair are guaranteed to be called by the same thread
392  registry.watchPreCloseFile(this, &NVProfilerService::preCloseFile);
393  registry.watchPostCloseFile(this, &NVProfilerService::postCloseFile);
394 
395  // these signal pair are guaranteed to be called by the same thread
396  registry.watchPreSourceConstruction(this, &NVProfilerService::preSourceConstruction);
397  registry.watchPostSourceConstruction(this, &NVProfilerService::postSourceConstruction);
398 
399  // these signal pair are guaranteed to be called by the same thread
400  registry.watchPreSourceRun(this, &NVProfilerService::preSourceRun);
401  registry.watchPostSourceRun(this, &NVProfilerService::postSourceRun);
402 
403  // these signal pair are guaranteed to be called by the same thread
404  registry.watchPreSourceLumi(this, &NVProfilerService::preSourceLumi);
405  registry.watchPostSourceLumi(this, &NVProfilerService::postSourceLumi);
406 
407  // these signal pair are guaranteed to be called by the same thread
408  registry.watchPreSourceEvent(this, &NVProfilerService::preSourceEvent);
409  registry.watchPostSourceEvent(this, &NVProfilerService::postSourceEvent);
410 
411  // these signal pair are guaranteed to be called by the same thread
412  registry.watchPreModuleConstruction(this, &NVProfilerService::preModuleConstruction);
413  registry.watchPostModuleConstruction(this, &NVProfilerService::postModuleConstruction);
414 
415  // these signal pair are guaranteed to be called by the same thread
416  registry.watchPreModuleBeginJob(this, &NVProfilerService::preModuleBeginJob);
417  registry.watchPostModuleBeginJob(this, &NVProfilerService::postModuleBeginJob);
418 
419  // these signal pair are guaranteed to be called by the same thread
420  registry.watchPreModuleEndJob(this, &NVProfilerService::preModuleEndJob);
421  registry.watchPostModuleEndJob(this, &NVProfilerService::postModuleEndJob);
422 
423  // these signal pair are guaranteed to be called by the same thread
424  registry.watchPreModuleBeginStream(this, &NVProfilerService::preModuleBeginStream);
425  registry.watchPostModuleBeginStream(this, &NVProfilerService::postModuleBeginStream);
426 
427  // these signal pair are guaranteed to be called by the same thread
428  registry.watchPreModuleEndStream(this, &NVProfilerService::preModuleEndStream);
429  registry.watchPostModuleEndStream(this, &NVProfilerService::postModuleEndStream);
430 
431  // these signal pair are guaranteed to be called by the same thread
432  registry.watchPreModuleGlobalBeginRun(this, &NVProfilerService::preModuleGlobalBeginRun);
433  registry.watchPostModuleGlobalBeginRun(this, &NVProfilerService::postModuleGlobalBeginRun);
434 
435  // these signal pair are guaranteed to be called by the same thread
436  registry.watchPreModuleGlobalEndRun(this, &NVProfilerService::preModuleGlobalEndRun);
437  registry.watchPostModuleGlobalEndRun(this, &NVProfilerService::postModuleGlobalEndRun);
438 
439  // these signal pair are guaranteed to be called by the same thread
440  registry.watchPreModuleGlobalBeginLumi(this, &NVProfilerService::preModuleGlobalBeginLumi);
441  registry.watchPostModuleGlobalBeginLumi(this, &NVProfilerService::postModuleGlobalBeginLumi);
442 
443  // these signal pair are guaranteed to be called by the same thread
444  registry.watchPreModuleGlobalEndLumi(this, &NVProfilerService::preModuleGlobalEndLumi);
445  registry.watchPostModuleGlobalEndLumi(this, &NVProfilerService::postModuleGlobalEndLumi);
446 
447  // these signal pair are guaranteed to be called by the same thread
448  registry.watchPreModuleStreamBeginRun(this, &NVProfilerService::preModuleStreamBeginRun);
449  registry.watchPostModuleStreamBeginRun(this, &NVProfilerService::postModuleStreamBeginRun);
450 
451  // these signal pair are guaranteed to be called by the same thread
452  registry.watchPreModuleStreamEndRun(this, &NVProfilerService::preModuleStreamEndRun);
453  registry.watchPostModuleStreamEndRun(this, &NVProfilerService::postModuleStreamEndRun);
454 
455  // these signal pair are guaranteed to be called by the same thread
456  registry.watchPreModuleStreamBeginLumi(this, &NVProfilerService::preModuleStreamBeginLumi);
457  registry.watchPostModuleStreamBeginLumi(this, &NVProfilerService::postModuleStreamBeginLumi);
458 
459  // these signal pair are guaranteed to be called by the same thread
460  registry.watchPreModuleStreamEndLumi(this, &NVProfilerService::preModuleStreamEndLumi);
461  registry.watchPostModuleStreamEndLumi(this, &NVProfilerService::postModuleStreamEndLumi);
462 
463  // these signal pair are guaranteed to be called by the same thread
464  registry.watchPreModuleEvent(this, &NVProfilerService::preModuleEvent);
465  registry.watchPostModuleEvent(this, &NVProfilerService::postModuleEvent);
466 
467  // these signal pair are guaranteed to be called by the same thread
468  registry.watchPreModuleEventDelayedGet(this, &NVProfilerService::preModuleEventDelayedGet);
469  registry.watchPostModuleEventDelayedGet(this, &NVProfilerService::postModuleEventDelayedGet);
470 
471  // these signal pair are guaranteed to be called by the same thread
472  registry.watchPreEventReadFromSource(this, &NVProfilerService::preEventReadFromSource);
473  registry.watchPostEventReadFromSource(this, &NVProfilerService::postEventReadFromSource);
474 }
void postStreamEndLumi(edm::StreamContext const &)
void preOpenFile(std::string const &, bool)
void preModuleEventPrefetching(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preGlobalBeginRun(edm::GlobalContext const &)
void postGlobalEndRun(edm::GlobalContext const &)
void preGlobalEndLumi(edm::GlobalContext const &)
void postOpenFile(std::string const &, bool)
void postModuleEventDelayedGet(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postModuleStreamBeginLumi(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postModuleEvent(edm::StreamContext const &, edm::ModuleCallingContext const &)
tbb::enumerable_thread_specific< Domains > domains_
void preModuleEndStream(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postCloseFile(std::string const &, bool)
void preStreamBeginLumi(edm::StreamContext const &)
void preModuleEvent(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preSourceRun(edm::RunIndex)
void preModuleStreamBeginLumi(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postSourceConstruction(edm::ModuleDescription const &)
void preModuleStreamBeginRun(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preCloseFile(std::string const &, bool)
void postStreamEndRun(edm::StreamContext const &)
Definition: config.py:1
void postModuleEndJob(edm::ModuleDescription const &)
void postGlobalEndLumi(edm::GlobalContext const &)
void preModuleEndJob(edm::ModuleDescription const &)
void preModuleGlobalBeginLumi(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void preGlobalBeginLumi(edm::GlobalContext const &)
void postSourceLumi(edm::LuminosityBlockIndex)
void preModuleStreamEndLumi(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postModuleConstruction(edm::ModuleDescription const &)
void postModuleEventPrefetching(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preModuleGlobalBeginRun(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void preGlobalEndRun(edm::GlobalContext const &)
void postSourceEvent(edm::StreamID)
void preStreamEndRun(edm::StreamContext const &)
void postModuleGlobalEndLumi(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void preModuleEventDelayedGet(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preSourceConstruction(edm::ModuleDescription const &)
void postModuleGlobalEndRun(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void preModuleGlobalEndRun(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void preBeginJob(edm::PathsAndConsumesOfModulesBase const &, edm::ProcessContext const &)
void postPathEvent(edm::StreamContext const &, edm::PathContext const &, edm::HLTPathStatus const &)
void postStreamBeginLumi(edm::StreamContext const &)
void preStreamEndLumi(edm::StreamContext const &)
void preModuleBeginJob(edm::ModuleDescription const &)
void postGlobalBeginLumi(edm::GlobalContext const &)
void postEventReadFromSource(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postModuleBeginStream(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postModuleGlobalBeginRun(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void preModuleBeginStream(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preSourceEvent(edm::StreamID)
void preModuleConstruction(edm::ModuleDescription const &)
unsigned int concurrentStreams_
void preStreamBeginRun(edm::StreamContext const &)
void postModuleStreamBeginRun(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preModuleStreamEndRun(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postGlobalBeginRun(edm::GlobalContext const &)
void postModuleStreamEndLumi(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postEvent(edm::StreamContext const &)
void postSourceRun(edm::RunIndex)
void preallocate(edm::service::SystemBounds const &)
void postModuleEndStream(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preSourceLumi(edm::LuminosityBlockIndex)
void preEventReadFromSource(edm::StreamContext const &, edm::ModuleCallingContext const &)
void preEvent(edm::StreamContext const &)
void preModuleGlobalEndLumi(edm::GlobalContext const &, edm::ModuleCallingContext const &)
void postStreamBeginRun(edm::StreamContext const &)
void prePathEvent(edm::StreamContext const &, edm::PathContext const &)
static Interceptor::Registry registry("Interceptor")
void postModuleStreamEndRun(edm::StreamContext const &, edm::ModuleCallingContext const &)
void postModuleGlobalBeginLumi(edm::GlobalContext const &, edm::ModuleCallingContext const &)
std::vector< std::string > highlightModules_
void postModuleBeginJob(edm::ModuleDescription const &)
NVProfilerService::~NVProfilerService ( )

Definition at line 476 of file NVProfilerService.cc.

476  {
477  cudaProfilerStop();
478 }

Member Function Documentation

void NVProfilerService::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 486 of file NVProfilerService.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::addUntracked(), and edm::ConfigurationDescriptions::setComment().

486  {
488  desc.addUntracked<std::vector<std::string>>("highlightModules", {})->setComment("");
489  desc.addUntracked<bool>("showModulePrefetching", false)->setComment("Show the stack of dependencies that requested to run a module.");
490  descriptions.add("NVProfilerService", desc);
491  descriptions.setComment(R"(This Service provides CMSSW-aware annotations to nvprof/nvvm.
492 
493 Notes:
494  - the option '--cpu-profiling on' currently results in cmsRun being stuck at the beginning of the job.
495  - the option '--cpu-thread-tracing on' is not compatible with jemalloc, and should only be used with cmsRunGlibC.)");
496 }
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
void setComment(std::string const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
nvtxDomainHandle_t NVProfilerService::global_domain ( )
inlineprivate
bool NVProfilerService::highlight ( std::string const &  label)
private
void NVProfilerService::postBeginJob ( )

Definition at line 528 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

528  {
529  nvtxDomainMark(global_domain(), "postBeginJob");
530 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postCloseFile ( std::string const &  lfn,
bool   
)

Definition at line 583 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

583  {
584  nvtxDomainRangePop(global_domain());
585 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postEndJob ( )

Definition at line 533 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

533  {
534  nvtxDomainMark(global_domain(), "postEndJob");
535 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postEvent ( edm::StreamContext const &  sc)

Definition at line 720 of file NVProfilerService.cc.

References event_, stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

720  {
721  auto sid = sc.streamID();
722  nvtxDomainRangeEnd(stream_domain(sid), event_[sid]);
723 }
std::vector< nvtxRangeId_t > event_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postEventReadFromSource ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 868 of file NVProfilerService.cc.

Referenced by NVProfilerService().

868  {
869  /* FIXME
870  auto sid = sc.streamID();
871  auto mid = mcc.moduleDescription()->id();
872  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
873  */
874 }
void NVProfilerService::postGlobalBeginLumi ( edm::GlobalContext const &  gc)

Definition at line 675 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

675  {
676  nvtxDomainRangePop(global_domain());
677 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postGlobalBeginRun ( edm::GlobalContext const &  gc)

Definition at line 631 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

631  {
632  nvtxDomainRangePop(global_domain());
633 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postGlobalEndLumi ( edm::GlobalContext const &  gc)

Definition at line 685 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

685  {
686  nvtxDomainRangePop(global_domain());
687 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postGlobalEndRun ( edm::GlobalContext const &  gc)

Definition at line 641 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

641  {
642  nvtxDomainRangePop(global_domain());
643 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postModuleBeginJob ( edm::ModuleDescription const &  desc)

Definition at line 790 of file NVProfilerService.cc.

References global_domain(), global_modules_, and edm::ModuleDescription::id().

Referenced by NVProfilerService().

790  {
791  auto mid = desc.id();
792  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
793 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleBeginStream ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 600 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

600  {
601  auto sid = sc.streamID();
602  auto mid = mcc.moduleDescription()->id();
603  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
604 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleConstruction ( edm::ModuleDescription const &  desc)

Definition at line 773 of file NVProfilerService.cc.

References global_domain(), global_modules_, and edm::ModuleDescription::id().

Referenced by NVProfilerService().

773  {
774  auto mid = desc.id();
775  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
776 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleEndJob ( edm::ModuleDescription const &  desc)

Definition at line 807 of file NVProfilerService.cc.

References global_domain(), global_modules_, and edm::ModuleDescription::id().

Referenced by NVProfilerService().

807  {
808  auto mid = desc.id();
809  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
810 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleEndStream ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 619 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

619  {
620  auto sid = sc.streamID();
621  auto mid = mcc.moduleDescription()->id();
622  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
623 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleEvent ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 824 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

824  {
825  auto sid = sc.streamID();
826  auto mid = mcc.moduleDescription()->id();
827  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
828 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleEventDelayedGet ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 845 of file NVProfilerService.cc.

Referenced by NVProfilerService().

845  {
846  /* FIXME
847  auto sid = sc.streamID();
848  auto mid = mcc.moduleDescription()->id();
849  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
850  */
851 }
void NVProfilerService::postModuleEventPrefetching ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 752 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), showModulePrefetching_, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

752  {
754  auto sid = sc.streamID();
755  auto mid = mcc.moduleDescription()->id();
756  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
757  }
758 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleGlobalBeginLumi ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 998 of file NVProfilerService.cc.

References global_domain(), global_modules_, edm::ModuleDescription::id(), and edm::ModuleCallingContext::moduleDescription().

Referenced by NVProfilerService().

998  {
999  auto mid = mcc.moduleDescription()->id();
1000  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
1001 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleGlobalBeginRun ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 964 of file NVProfilerService.cc.

References global_domain(), global_modules_, edm::ModuleDescription::id(), and edm::ModuleCallingContext::moduleDescription().

Referenced by NVProfilerService().

964  {
965  auto mid = mcc.moduleDescription()->id();
966  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
967 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleGlobalEndLumi ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 1015 of file NVProfilerService.cc.

References global_domain(), global_modules_, edm::ModuleDescription::id(), and edm::ModuleCallingContext::moduleDescription().

Referenced by NVProfilerService().

1015  {
1016  auto mid = mcc.moduleDescription()->id();
1017  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
1018 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleGlobalEndRun ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 981 of file NVProfilerService.cc.

References global_domain(), global_modules_, edm::ModuleDescription::id(), and edm::ModuleCallingContext::moduleDescription().

Referenced by NVProfilerService().

981  {
982  auto mid = mcc.moduleDescription()->id();
983  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
984 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postModuleStreamBeginLumi ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 927 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

927  {
928  auto sid = sc.streamID();
929  auto mid = mcc.moduleDescription()->id();
930  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
931 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleStreamBeginRun ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 889 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

889  {
890  auto sid = sc.streamID();
891  auto mid = mcc.moduleDescription()->id();
892  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
893 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleStreamEndLumi ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 946 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

946  {
947  auto sid = sc.streamID();
948  auto mid = mcc.moduleDescription()->id();
949  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
950 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postModuleStreamEndRun ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 908 of file NVProfilerService.cc.

References edm::ModuleDescription::id(), edm::ModuleCallingContext::moduleDescription(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

908  {
909  auto sid = sc.streamID();
910  auto mid = mcc.moduleDescription()->id();
911  nvtxDomainRangeEnd(stream_domain(sid), stream_modules_[sid][mid]);
912 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postOpenFile ( std::string const &  lfn,
bool   
)

Definition at line 573 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

573  {
574  nvtxDomainRangePop(global_domain());
575 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postPathEvent ( edm::StreamContext const &  sc,
edm::PathContext const &  pc,
edm::HLTPathStatus const &  hlts 
)

Definition at line 732 of file NVProfilerService.cc.

References global_domain(), edm::PathContext::pathName(), alignCSCRings::s, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

732  {
733  auto sid = sc.streamID();
734  nvtxDomainMark(global_domain(), ("after path "s + pc.pathName()).c_str());
735 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postSourceConstruction ( edm::ModuleDescription const &  desc)

Definition at line 1033 of file NVProfilerService.cc.

References DEFINE_FWK_SERVICE, global_domain(), global_modules_, and edm::ModuleDescription::id().

Referenced by NVProfilerService().

1033  {
1034  auto mid = desc.id();
1035  nvtxDomainRangeEnd(global_domain(), global_modules_[mid]);
1036 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
void NVProfilerService::postSourceEvent ( edm::StreamID  sid)

Definition at line 543 of file NVProfilerService.cc.

References stream_domain().

Referenced by NVProfilerService().

543  {
544  nvtxDomainRangePop(stream_domain(sid));
545 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postSourceLumi ( edm::LuminosityBlockIndex  index)

Definition at line 553 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

553  {
554  nvtxDomainRangePop(global_domain());
555 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postSourceRun ( edm::RunIndex  index)

Definition at line 563 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

563  {
564  nvtxDomainRangePop(global_domain());
565 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::postStreamBeginLumi ( edm::StreamContext const &  sc)

Definition at line 696 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

696  {
697  auto sid = sc.streamID();
698  nvtxDomainRangePop(stream_domain(sid));
699 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postStreamBeginRun ( edm::StreamContext const &  sc)

Definition at line 652 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

652  {
653  auto sid = sc.streamID();
654  nvtxDomainRangePop(stream_domain(sid));
655 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postStreamEndLumi ( edm::StreamContext const &  sc)

Definition at line 708 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

708  {
709  auto sid = sc.streamID();
710  nvtxDomainRangePop(stream_domain(sid));
711 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::postStreamEndRun ( edm::StreamContext const &  sc)

Definition at line 664 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

664  {
665  auto sid = sc.streamID();
666  nvtxDomainRangePop(stream_domain(sid));
667 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preallocate ( edm::service::SystemBounds const &  bounds)

Definition at line 499 of file NVProfilerService.cc.

References concurrentStreams_, domains_, event_, global_domain(), edm::service::SystemBounds::maxNumberOfConcurrentLuminosityBlocks(), edm::service::SystemBounds::maxNumberOfConcurrentRuns(), edm::service::SystemBounds::maxNumberOfStreams(), edm::service::SystemBounds::maxNumberOfThreads(), MillePedeFileConverter_cfg::out, and stream_modules_.

Referenced by NVProfilerService().

499  {
500  std::stringstream out;
501  out << "preallocate: " << bounds.maxNumberOfConcurrentRuns() << " concurrent runs, "
502  << bounds.maxNumberOfConcurrentLuminosityBlocks() << " luminosity sections, "
503  << bounds.maxNumberOfStreams() << " streams\nrunning on"
504  << bounds.maxNumberOfThreads() << " threads";
505  nvtxDomainMark(global_domain(), out.str().c_str());
506 
507  concurrentStreams_ = bounds.maxNumberOfStreams();
508  for (auto& domain: domains_) {
509  domain.allocate_streams(concurrentStreams_);
510  }
511  event_.resize(concurrentStreams_);
512  stream_modules_.resize(concurrentStreams_);
513 }
tbb::enumerable_thread_specific< Domains > domains_
nvtxDomainHandle_t global_domain()
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
std::vector< nvtxRangeId_t > event_
unsigned int concurrentStreams_
void NVProfilerService::preBeginJob ( edm::PathsAndConsumesOfModulesBase const &  pathsAndConsumes,
edm::ProcessContext const &  pc 
)

Definition at line 516 of file NVProfilerService.cc.

References edm::PathsAndConsumesOfModulesBase::allModules(), concurrentStreams_, global_domain(), global_modules_, and stream_modules_.

Referenced by NVProfilerService().

516  {
517  nvtxDomainMark(global_domain(), "preBeginJob");
518 
519  // FIXME this probably works only in the absence of subprocesses
520  unsigned int modules = pathsAndConsumes.allModules().size();
521  global_modules_.resize(modules);
522  for (unsigned int sid = 0; sid < concurrentStreams_; ++sid) {
523  stream_modules_[sid].resize(modules);
524  }
525 }
nvtxDomainHandle_t global_domain()
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
unsigned int concurrentStreams_
void NVProfilerService::preCloseFile ( std::string const &  lfn,
bool   
)

Definition at line 578 of file NVProfilerService.cc.

References global_domain(), and alignCSCRings::s.

Referenced by NVProfilerService().

578  {
579  nvtxDomainRangePush(global_domain(), ("close file "s + lfn).c_str());
580 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preEvent ( edm::StreamContext const &  sc)

Definition at line 714 of file NVProfilerService.cc.

References event_, stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

714  {
715  auto sid = sc.streamID();
716  event_[sid] = nvtxDomainRangeStartColor(stream_domain(sid), "event", nvtxDarkGreen);
717 }
std::vector< nvtxRangeId_t > event_
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preEventReadFromSource ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 854 of file NVProfilerService.cc.

Referenced by NVProfilerService().

854  {
855  /* FIXME
856  auto sid = sc.streamID();
857  auto mid = mcc.moduleDescription()->id();
858  auto const & label = mcc.moduleDescription()->moduleLabel();
859  auto const & msg = label + " read from source";
860  if (highlight(label))
861  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
862  else
863  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
864  */
865 }
void NVProfilerService::preGlobalBeginLumi ( edm::GlobalContext const &  gc)

Definition at line 670 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

670  {
671  nvtxDomainRangePush(global_domain(), "global begin lumi");
672 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preGlobalBeginRun ( edm::GlobalContext const &  gc)

Definition at line 626 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

626  {
627  nvtxDomainRangePush(global_domain(), "global begin run");
628 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preGlobalEndLumi ( edm::GlobalContext const &  gc)

Definition at line 680 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

680  {
681  nvtxDomainRangePush(global_domain(), "global end lumi");
682 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preGlobalEndRun ( edm::GlobalContext const &  gc)

Definition at line 636 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

636  {
637  nvtxDomainRangePush(global_domain(), "global end run");
638 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preModuleBeginJob ( edm::ModuleDescription const &  desc)

Definition at line 779 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

779  {
780  auto mid = desc.id();
781  auto const & label = desc.moduleLabel();
782  auto const & msg = label + " begin job";
783  if (highlight(label))
784  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
785  else
786  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
787 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleBeginStream ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 588 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

588  {
589  auto sid = sc.streamID();
590  auto mid = mcc.moduleDescription()->id();
591  auto const & label = mcc.moduleDescription()->moduleLabel();
592  auto const & msg = label + " begin stream";
593  if (highlight(label))
594  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
595  else
596  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
597 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleConstruction ( edm::ModuleDescription const &  desc)

Definition at line 761 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

761  {
762  auto mid = desc.id();
763  global_modules_.grow_to_at_least(mid+1);
764  auto const & label = desc.moduleLabel();
765  auto const & msg = label + " construction";
766  if (highlight(label))
767  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
768  else
769  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
770 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleEndJob ( edm::ModuleDescription const &  desc)

Definition at line 796 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

796  {
797  auto mid = desc.id();
798  auto const & label = desc.moduleLabel();
799  auto const & msg = label + " end job";
800  if (highlight(label))
801  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
802  else
803  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
804 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleEndStream ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 607 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

607  {
608  auto sid = sc.streamID();
609  auto mid = mcc.moduleDescription()->id();
610  auto const & label = mcc.moduleDescription()->moduleLabel();
611  auto const & msg = label + " end stream";
612  if (highlight(label))
613  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
614  else
615  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
616 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleEvent ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 813 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

813  {
814  auto sid = sc.streamID();
815  auto mid = mcc.moduleDescription()->id();
816  auto const & label = mcc.moduleDescription()->moduleLabel();
817  if (highlight(label))
818  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), label.c_str(), nvtxAmber);
819  else
820  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), label.c_str(), nvtxGreen);;
821 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleEventDelayedGet ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 831 of file NVProfilerService.cc.

Referenced by NVProfilerService().

831  {
832  /* FIXME
833  auto sid = sc.streamID();
834  auto mid = mcc.moduleDescription()->id();
835  auto const & label = mcc.moduleDescription()->moduleLabel();
836  auto const & msg = label + " delayed get";
837  if (highlight(label))
838  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), label.c_str(), nvtxAmber);
839  else
840  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), label.c_str(), nvtxGreen);;
841  */
842 }
void NVProfilerService::preModuleEventPrefetching ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 738 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, showModulePrefetching_, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

738  {
740  auto sid = sc.streamID();
741  auto mid = mcc.moduleDescription()->id();
742  auto const & label = mcc.moduleDescription()->moduleLabel();
743  auto const & msg = label + " prefetching";
744  if (highlight(label))
745  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxLightAmber);
746  else
747  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxLightGreen);
748  }
749 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleGlobalBeginLumi ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 987 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

987  {
988  auto mid = mcc.moduleDescription()->id();
989  auto const & label = mcc.moduleDescription()->moduleLabel();
990  auto const & msg = label + " global begin lumi";
991  if (highlight(label))
992  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
993  else
994  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
995 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleGlobalBeginRun ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 953 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

953  {
954  auto mid = mcc.moduleDescription()->id();
955  auto const & label = mcc.moduleDescription()->moduleLabel();
956  auto const & msg = label + " global begin run";
957  if (highlight(label))
958  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
959  else
960  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
961 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleGlobalEndLumi ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 1004 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

1004  {
1005  auto mid = mcc.moduleDescription()->id();
1006  auto const & label = mcc.moduleDescription()->moduleLabel();
1007  auto const & msg = label + " global end lumi";
1008  if (highlight(label))
1009  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
1010  else
1011  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
1012 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleGlobalEndRun ( edm::GlobalContext const &  gc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 970 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

970  {
971  auto mid = mcc.moduleDescription()->id();
972  auto const & label = mcc.moduleDescription()->moduleLabel();
973  auto const & msg = label + " global end run";
974  if (highlight(label))
975  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
976  else
977  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
978 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preModuleStreamBeginLumi ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 915 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

915  {
916  auto sid = sc.streamID();
917  auto mid = mcc.moduleDescription()->id();
918  auto const & label = mcc.moduleDescription()->moduleLabel();
919  auto const & msg = label + " stream begin lumi";
920  if (highlight(label))
921  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
922  else
923  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
924 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleStreamBeginRun ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 877 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

877  {
878  auto sid = sc.streamID();
879  auto mid = mcc.moduleDescription()->id();
880  auto const & label = mcc.moduleDescription()->moduleLabel();
881  auto const & msg = label + " stream begin run";
882  if (highlight(label))
883  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
884  else
885  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
886 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleStreamEndLumi ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 934 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

934  {
935  auto sid = sc.streamID();
936  auto mid = mcc.moduleDescription()->id();
937  auto const & label = mcc.moduleDescription()->moduleLabel();
938  auto const & msg = label + " stream end lumi";
939  if (highlight(label))
940  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
941  else
942  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
943 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preModuleStreamEndRun ( edm::StreamContext const &  sc,
edm::ModuleCallingContext const &  mcc 
)

Definition at line 896 of file NVProfilerService.cc.

References highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleCallingContext::moduleDescription(), edm::ModuleDescription::moduleLabel(), mps_check::msg, stream_domain(), stream_modules_, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

896  {
897  auto sid = sc.streamID();
898  auto mid = mcc.moduleDescription()->id();
899  auto const & label = mcc.moduleDescription()->moduleLabel();
900  auto const & msg = label + " stream end run";
901  if (highlight(label))
902  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxAmber);
903  else
904  stream_modules_[sid][mid] = nvtxDomainRangeStartColor(stream_domain(sid), msg.c_str(), nvtxGreen);;
905 }
std::vector< std::vector< nvtxRangeId_t > > stream_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preOpenFile ( std::string const &  lfn,
bool   
)

Definition at line 568 of file NVProfilerService.cc.

References global_domain(), and alignCSCRings::s.

Referenced by NVProfilerService().

568  {
569  nvtxDomainRangePush(global_domain(), ("open file "s + lfn).c_str());
570 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::prePathEvent ( edm::StreamContext const &  sc,
edm::PathContext const &  pc 
)

Definition at line 726 of file NVProfilerService.cc.

References global_domain(), edm::PathContext::pathName(), alignCSCRings::s, and edm::StreamContext::streamID().

Referenced by NVProfilerService().

726  {
727  auto sid = sc.streamID();
728  nvtxDomainMark(global_domain(), ("before path "s + pc.pathName()).c_str());
729 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preSourceConstruction ( edm::ModuleDescription const &  desc)

Definition at line 1021 of file NVProfilerService.cc.

References global_domain(), global_modules_, highlight(), edm::ModuleDescription::id(), diffTwoXMLs::label, edm::ModuleDescription::moduleLabel(), and mps_check::msg.

Referenced by NVProfilerService().

1021  {
1022  auto mid = desc.id();
1023  global_modules_.grow_to_at_least(mid+1);
1024  auto const & label = desc.moduleLabel();
1025  auto const & msg = label + " construction";
1026  if (highlight(label))
1027  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxAmber);
1028  else
1029  global_modules_[mid] = nvtxDomainRangeStartColor(global_domain(), msg.c_str(), nvtxGreen);;
1030 }
nvtxDomainHandle_t global_domain()
tbb::concurrent_vector< nvtxRangeId_t > global_modules_
tuple msg
Definition: mps_check.py:277
bool highlight(std::string const &)
void NVProfilerService::preSourceEvent ( edm::StreamID  sid)

Definition at line 538 of file NVProfilerService.cc.

References stream_domain().

Referenced by NVProfilerService().

538  {
539  nvtxDomainRangePush(stream_domain(sid), "source");
540 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preSourceLumi ( edm::LuminosityBlockIndex  index)

Definition at line 548 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

548  {
549  nvtxDomainRangePush(global_domain(), "source lumi");
550 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preSourceRun ( edm::RunIndex  index)

Definition at line 558 of file NVProfilerService.cc.

References global_domain().

Referenced by NVProfilerService().

558  {
559  nvtxDomainRangePush(global_domain(), "source run");
560 }
nvtxDomainHandle_t global_domain()
void NVProfilerService::preStreamBeginLumi ( edm::StreamContext const &  sc)

Definition at line 690 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

690  {
691  auto sid = sc.streamID();
692  nvtxDomainRangePush(stream_domain(sid), "stream begin lumi");
693 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preStreamBeginRun ( edm::StreamContext const &  sc)

Definition at line 646 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

646  {
647  auto sid = sc.streamID();
648  nvtxDomainRangePush(stream_domain(sid), "stream begin run");
649 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preStreamEndLumi ( edm::StreamContext const &  sc)

Definition at line 702 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

702  {
703  auto sid = sc.streamID();
704  nvtxDomainRangePush(stream_domain(sid), "stream end lumi");
705 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
void NVProfilerService::preStreamEndRun ( edm::StreamContext const &  sc)

Definition at line 658 of file NVProfilerService.cc.

References stream_domain(), and edm::StreamContext::streamID().

Referenced by NVProfilerService().

658  {
659  auto sid = sc.streamID();
660  nvtxDomainRangePush(stream_domain(sid), "stream end run");
661 }
nvtxDomainHandle_t stream_domain(unsigned int sid)
nvtxDomainHandle_t NVProfilerService::stream_domain ( unsigned int  sid)
inlineprivate

Friends And Related Function Documentation

friend struct Domains
friend

Definition at line 309 of file NVProfilerService.cc.

Member Data Documentation

unsigned int NVProfilerService::concurrentStreams_
private
tbb::enumerable_thread_specific<Domains> NVProfilerService::domains_
private

Definition at line 311 of file NVProfilerService.cc.

Referenced by preallocate().

std::vector<nvtxRangeId_t> NVProfilerService::event_
private

Definition at line 278 of file NVProfilerService.cc.

Referenced by postEvent(), preallocate(), and preEvent().

tbb::concurrent_vector<nvtxRangeId_t> NVProfilerService::global_modules_
private
std::vector<std::string> NVProfilerService::highlightModules_
private

Definition at line 274 of file NVProfilerService.cc.

Referenced by highlight(), and NVProfilerService().

bool NVProfilerService::showModulePrefetching_
private

Definition at line 275 of file NVProfilerService.cc.

Referenced by postModuleEventPrefetching(), and preModuleEventPrefetching().

std::vector<std::vector<nvtxRangeId_t> > NVProfilerService::stream_modules_
private