ROOTANA
Public Member Functions | Private Attributes
Profiler Class Reference
Collaboration diagram for Profiler:
Collaboration graph
[legend]

Public Member Functions

 Profiler (const bool time_modules, const int queue_interval_check)
 
 ~Profiler ()
 
void Begin (TARunInfo *runinfo, const std::vector< TARunObject * > fRunRun)
 
void LogAnalyzeEvent (TAFlags *flag, TAFlowEvent *flow, const int i, const TAClock &start)
 
void LogAnalyzeFlowEvent (TAFlags *flag, TAFlowEvent *flow, const int i, const TAClock &start)
 
void LogUserWindows (TAFlags *flag, TAFlowEvent *flow)
 
void AddModuleMap (const char *UserProfileName, unsigned long hash)
 
void LogMTQueueLength (TARunInfo *runinfo)
 
void End ()
 
void Print () const
 

Private Attributes

std::string fBinaryName
 
std::string fBinaryPath
 
clock_t fStartCPU
 
std::chrono::system_clock::time_point fStartUser
 
uint32_t fMIDASStartTime
 
uint32_t fMIDASStopTime
 
int fNQueues =0
 
std::vector< TH1D * > fAnalysisQueue
 
int fQueueIntervalCounter =0
 
std::vector< TH1D * > fAnalyzeEventTimeHistograms
 
std::vector< std::string > fModuleNames
 
std::vector< double > fAnalyzeEventMean
 
std::vector< double > fAnalyzeEventRMS
 
std::vector< int > fAnalyzeEventEntries
 
std::vector< double > fAnalyzeEventTimeMax
 
std::vector< double > fAnalyzeEventTimeTotal
 
std::vector< TH1D * > fAnalyzeFlowEventTimeHistograms
 
std::vector< double > fAnalyzeFlowEventMean
 
std::vector< double > fAnalyzeFlowEventRMS
 
std::vector< int > fAnalyzeFlowEventEntries
 
std::vector< double > fAnalyzeFlowEventTimeMax
 
std::vector< double > fAnalyzeFlowEventTimeTotal
 
std::map< unsigned int, int > fUserMap
 
std::vector< TH1D * > fUserHistograms
 
std::vector< double > fTotalUserTime
 
std::vector< double > fMaxUserTime
 
const bool fTimeModules
 
const int fQueueInterval = 100
 

Detailed Description

Definition at line 500 of file manalyzer.cxx.

Constructor & Destructor Documentation

◆ Profiler()

Profiler::Profiler ( const bool  time_modules,
const int  queue_interval_check 
)

Definition at line 566 of file manalyzer.cxx.

Here is the caller graph for this function:

◆ ~Profiler()

Profiler::~Profiler ( )

Definition at line 577 of file manalyzer.cxx.

Member Function Documentation

◆ AddModuleMap()

void Profiler::AddModuleMap ( const char *  UserProfileName,
unsigned long  hash 
)

Definition at line 801 of file manalyzer.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Begin()

void Profiler::Begin ( TARunInfo runinfo,
const std::vector< TARunObject * >  fRunRun 
)

Definition at line 583 of file manalyzer.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ End()

void Profiler::End ( )

Definition at line 825 of file manalyzer.cxx.

Here is the caller graph for this function:

◆ LogAnalyzeEvent()

void Profiler::LogAnalyzeEvent ( TAFlags flag,
TAFlowEvent flow,
const int  i,
const TAClock start 
)

Definition at line 708 of file manalyzer.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LogAnalyzeFlowEvent()

void Profiler::LogAnalyzeFlowEvent ( TAFlags flag,
TAFlowEvent flow,
const int  i,
const TAClock start 
)

Definition at line 677 of file manalyzer.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LogMTQueueLength()

void Profiler::LogMTQueueLength ( TARunInfo runinfo)

Definition at line 740 of file manalyzer.cxx.

Here is the caller graph for this function:

◆ LogUserWindows()

void Profiler::LogUserWindows ( TAFlags flag,
TAFlowEvent flow 
)

Definition at line 761 of file manalyzer.cxx.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Print()

void Profiler::Print ( ) const

Definition at line 847 of file manalyzer.cxx.

Here is the caller graph for this function:

Field Documentation

◆ fAnalysisQueue

std::vector<TH1D*> Profiler::fAnalysisQueue
private

Definition at line 513 of file manalyzer.cxx.

◆ fAnalyzeEventEntries

std::vector<int> Profiler::fAnalyzeEventEntries
private

Definition at line 524 of file manalyzer.cxx.

◆ fAnalyzeEventMean

std::vector<double> Profiler::fAnalyzeEventMean
private

Definition at line 522 of file manalyzer.cxx.

◆ fAnalyzeEventRMS

std::vector<double> Profiler::fAnalyzeEventRMS
private

Definition at line 523 of file manalyzer.cxx.

◆ fAnalyzeEventTimeHistograms

std::vector<TH1D*> Profiler::fAnalyzeEventTimeHistograms
private

Definition at line 519 of file manalyzer.cxx.

◆ fAnalyzeEventTimeMax

std::vector<double> Profiler::fAnalyzeEventTimeMax
private

Definition at line 526 of file manalyzer.cxx.

◆ fAnalyzeEventTimeTotal

std::vector<double> Profiler::fAnalyzeEventTimeTotal
private

Definition at line 527 of file manalyzer.cxx.

◆ fAnalyzeFlowEventEntries

std::vector<int> Profiler::fAnalyzeFlowEventEntries
private

Definition at line 535 of file manalyzer.cxx.

◆ fAnalyzeFlowEventMean

std::vector<double> Profiler::fAnalyzeFlowEventMean
private

Definition at line 533 of file manalyzer.cxx.

◆ fAnalyzeFlowEventRMS

std::vector<double> Profiler::fAnalyzeFlowEventRMS
private

Definition at line 534 of file manalyzer.cxx.

◆ fAnalyzeFlowEventTimeHistograms

std::vector<TH1D*> Profiler::fAnalyzeFlowEventTimeHistograms
private

Definition at line 531 of file manalyzer.cxx.

◆ fAnalyzeFlowEventTimeMax

std::vector<double> Profiler::fAnalyzeFlowEventTimeMax
private

Definition at line 537 of file manalyzer.cxx.

◆ fAnalyzeFlowEventTimeTotal

std::vector<double> Profiler::fAnalyzeFlowEventTimeTotal
private

Definition at line 538 of file manalyzer.cxx.

◆ fBinaryName

std::string Profiler::fBinaryName
private

Definition at line 503 of file manalyzer.cxx.

◆ fBinaryPath

std::string Profiler::fBinaryPath
private

Definition at line 504 of file manalyzer.cxx.

◆ fMaxUserTime

std::vector<double> Profiler::fMaxUserTime
private

Definition at line 544 of file manalyzer.cxx.

◆ fMIDASStartTime

uint32_t Profiler::fMIDASStartTime
private

Definition at line 507 of file manalyzer.cxx.

◆ fMIDASStopTime

uint32_t Profiler::fMIDASStopTime
private

Definition at line 508 of file manalyzer.cxx.

◆ fModuleNames

std::vector<std::string> Profiler::fModuleNames
private

Definition at line 521 of file manalyzer.cxx.

◆ fNQueues

int Profiler::fNQueues =0
private

Definition at line 512 of file manalyzer.cxx.

◆ fQueueInterval

const int Profiler::fQueueInterval = 100
private

Definition at line 549 of file manalyzer.cxx.

◆ fQueueIntervalCounter

int Profiler::fQueueIntervalCounter =0
private

Definition at line 514 of file manalyzer.cxx.

◆ fStartCPU

clock_t Profiler::fStartCPU
private

Definition at line 505 of file manalyzer.cxx.

◆ fStartUser

std::chrono::system_clock::time_point Profiler::fStartUser
private

Definition at line 506 of file manalyzer.cxx.

◆ fTimeModules

const bool Profiler::fTimeModules
private

Definition at line 547 of file manalyzer.cxx.

◆ fTotalUserTime

std::vector<double> Profiler::fTotalUserTime
private

Definition at line 543 of file manalyzer.cxx.

◆ fUserHistograms

std::vector<TH1D*> Profiler::fUserHistograms
private

Definition at line 542 of file manalyzer.cxx.

◆ fUserMap

std::map<unsigned int,int> Profiler::fUserMap
private

Definition at line 541 of file manalyzer.cxx.


The documentation for this class was generated from the following file: