OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
Public Types | Static Public Member Functions | Private Types | Private Member Functions | Static Private Attributes | List of all members
IpplTimings Class Reference

#include <IpplTimings.h>

Collaboration diagram for IpplTimings:
Collaboration graph
[legend]

Public Types

typedef Timing::TimerRef TimerRef
 
typedef Timing::TimerInfo TimerInfo
 

Static Public Member Functions

static TimerRef getTimer (const char *nm)
 
static void startTimer (TimerRef t)
 
static void stopTimer (TimerRef t)
 
static void clearTimer (TimerRef t)
 
static TimerInfoinfoTimer (const char *nm)
 
static void print ()
 
static void print (std::string fn, const std::map< std::string, unsigned int > &problemSize=std::map< std::string, unsigned int >())
 
static void stash ()
 
static void pop ()
 

Private Types

typedef Timing::TimerList_t TimerList_t
 
typedef Timing::TimerMap_t TimerMap_t
 

Private Member Functions

 IpplTimings ()
 
 ~IpplTimings ()
 

Static Private Attributes

static Timinginstance = new Timing()
 
static std::stack< Timing * > stashedInstance
 

Detailed Description

Definition at line 172 of file IpplTimings.h.

Member Typedef Documentation

◆ TimerInfo

Definition at line 179 of file IpplTimings.h.

◆ TimerList_t

Definition at line 222 of file IpplTimings.h.

◆ TimerMap_t

Definition at line 223 of file IpplTimings.h.

◆ TimerRef

Definition at line 176 of file IpplTimings.h.

Constructor & Destructor Documentation

◆ IpplTimings()

IpplTimings::IpplTimings ( )
private

Definition at line 250 of file IpplTimings.cpp.

◆ ~IpplTimings()

IpplTimings::~IpplTimings ( )
private

Definition at line 251 of file IpplTimings.cpp.

Member Function Documentation

◆ clearTimer()

static void IpplTimings::clearTimer ( TimerRef  t)
inlinestatic

Definition at line 197 of file IpplTimings.h.

References Timing::clearTimer(), and instance.

Here is the call graph for this function:

◆ getTimer()

static TimerRef IpplTimings::getTimer ( const char *  nm)
inlinestatic

◆ infoTimer()

static TimerInfo* IpplTimings::infoTimer ( const char *  nm)
inlinestatic

Definition at line 202 of file IpplTimings.h.

References Timing::infoTimer(), and instance.

Here is the call graph for this function:

◆ pop()

void IpplTimings::pop ( )
static

Definition at line 260 of file IpplTimings.cpp.

References instance, PAssert_GT, and stashedInstance.

Referenced by OptimizeCmd::popEnvironment(), and SampleCmd::popEnvironment().

◆ print() [1/2]

static void IpplTimings::print ( )
inlinestatic

Definition at line 207 of file IpplTimings.h.

References instance, and Timing::print().

Referenced by main().

Here is the call graph for this function:

◆ print() [2/2]

static void IpplTimings::print ( std::string  fn,
const std::map< std::string, unsigned int > &  problemSize = std::map<std::string, unsigned int>() 
)
inlinestatic

Definition at line 212 of file IpplTimings.h.

References instance, and Timing::print().

Here is the call graph for this function:

◆ startTimer()

static void IpplTimings::startTimer ( TimerRef  t)
inlinestatic

Definition at line 187 of file IpplTimings.h.

References instance, and Timing::startTimer().

Referenced by ScatteringPhysics::apply(), ParallelCyclotronTracker::applyPluginElements(), BoxLibParticle< PLayout >::AssignDensityFort(), AmrMultiGrid::averageDown_m(), ParallelCyclotronTracker::borisExternalFields(), AmrPartBunch::boundp(), PartBunchBase< T, Dim >::boundp(), PartBunchBase< T, Dim >::boundp_destroyCycl(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), PartBunchBase< T, Dim >::calcBeamParameters(), AmrMultiGrid::computeEfield_m(), ParallelTTracker::computeExternalFields(), MGPoissonSolver::computePotential(), FFTBoxPoissonSolver::computePotential(), FFTPoissonSolver::computePotential(), AmrPartBunch::computeSelfFields(), PartBunch::computeSelfFields(), AmrPartBunch::computeSelfFields_cycl(), PartBunch::computeSelfFields_cycl(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeWakefield(), ThickTracker::concatenateMaps_m(), ScatteringPhysics::copyFromBunch(), Distribution::createOpalT(), ParallelCyclotronTracker::deleteParticle(), ParallelTTracker::doBinaryRepartition(), AmrParticleBase< PLayout >::domainMapping(), Distribution::doRestartOpalCycl(), Distribution::doRestartOpalT(), DataSink::dumpSDDS(), BoundaryGeometry::fastIsInside(), ParallelCyclotronTracker::globalToLocal(), FFTBoxPoissonSolver::greensFunction(), BoundaryGeometry::initialize(), FFTBoxPoissonSolver::integratedGreensFunction(), BoundaryGeometry::intersectRayBoundary(), ParallelCyclotronTracker::kick(), ParallelCyclotronTracker::localToGlobal(), main(), BoundaryGeometry::partInside(), AmrMultiGrid::prolongate_m(), ParallelCyclotronTracker::push(), DiscField< Dim >::read(), MultiBunchHandler::readBunch(), AmrBoxLib::regrid(), AmrMultiGrid::relax_m(), ParallelCyclotronTracker::repartition(), AmrMultiGrid::restrict_m(), MultiBunchHandler::saveBunch(), ParallelCyclotronTracker::seoMode_m(), BelosBottomSolver< Level >::setOperator(), MueLuBottomSolver< Level >::setOperator(), AmrMultiGrid::setup_m(), FFTBoxPoissonSolver::shiftedIntGreensFunction(), ParallelCyclotronTracker::singleMode_m(), ParallelCyclotronTracker::singleParticleDump(), AmrMultiGrid::smooth_m(), AmrBoxLib::solvePoisson_m(), AmrParticleBase< PLayout >::sort(), ParallelTTracker::timeIntegration1(), ParallelTTracker::timeIntegration2(), ThickTracker::track_m(), AmrParticleBase< PLayout >::update(), MultiBunchHandler::updateParticleBins(), DataSink::writeMultiBunchStatistics(), H5Writer::writePhaseSpace(), and AmrMultiGrid::writeSDDSData_m().

Here is the call graph for this function:

◆ stash()

void IpplTimings::stash ( )
static

Definition at line 253 of file IpplTimings.cpp.

References instance, PAssert_EQ, and stashedInstance.

Referenced by OptimizeCmd::stashEnvironment(), and SampleCmd::stashEnvironment().

◆ stopTimer()

static void IpplTimings::stopTimer ( TimerRef  t)
inlinestatic

Definition at line 192 of file IpplTimings.h.

References instance, and Timing::stopTimer().

Referenced by ScatteringPhysics::apply(), ParallelCyclotronTracker::applyPluginElements(), BoxLibParticle< PLayout >::AssignDensityFort(), AmrMultiGrid::averageDown_m(), ParallelCyclotronTracker::borisExternalFields(), AmrPartBunch::boundp(), PartBunchBase< T, Dim >::boundp_destroyCycl(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), ParallelCyclotronTracker::bunchMode_m(), PartBunchBase< T, Dim >::calcBeamParameters(), AmrMultiGrid::computeEfield_m(), ParallelTTracker::computeExternalFields(), MGPoissonSolver::computePotential(), FFTBoxPoissonSolver::computePotential(), FFTPoissonSolver::computePotential(), AmrPartBunch::computeSelfFields(), PartBunch::computeSelfFields(), AmrPartBunch::computeSelfFields_cycl(), PartBunch::computeSelfFields_cycl(), AmrBoxLib::computeSelfFields_cycl(), ParallelTTracker::computeWakefield(), ThickTracker::concatenateMaps_m(), ScatteringPhysics::copyFromBunch(), Distribution::createOpalT(), ParallelCyclotronTracker::deleteParticle(), ParallelTTracker::doBinaryRepartition(), AmrParticleBase< PLayout >::domainMapping(), Distribution::doRestartOpalCycl(), Distribution::doRestartOpalT(), DataSink::dumpSDDS(), ParallelCyclotronTracker::globalToLocal(), FFTBoxPoissonSolver::greensFunction(), BoundaryGeometry::initialize(), FFTBoxPoissonSolver::integratedGreensFunction(), BoundaryGeometry::intersectRayBoundary(), ParallelCyclotronTracker::kick(), ParallelCyclotronTracker::localToGlobal(), main(), BoundaryGeometry::partInside(), AmrMultiGrid::prolongate_m(), ParallelCyclotronTracker::push(), DiscField< Dim >::read(), MultiBunchHandler::readBunch(), AmrBoxLib::regrid(), AmrMultiGrid::relax_m(), ParallelCyclotronTracker::repartition(), AmrMultiGrid::restrict_m(), MultiBunchHandler::saveBunch(), ParallelCyclotronTracker::seoMode_m(), BelosBottomSolver< Level >::setOperator(), MueLuBottomSolver< Level >::setOperator(), FFTBoxPoissonSolver::shiftedIntGreensFunction(), ParallelCyclotronTracker::singleMode_m(), ParallelCyclotronTracker::singleParticleDump(), AmrMultiGrid::smooth_m(), AmrBoxLib::solvePoisson_m(), AmrParticleBase< PLayout >::sort(), ParallelTTracker::timeIntegration1(), ParallelTTracker::timeIntegration2(), ThickTracker::track_m(), AmrParticleBase< PLayout >::update(), MultiBunchHandler::updateParticleBins(), DataSink::writeMultiBunchStatistics(), H5Writer::writePhaseSpace(), and AmrMultiGrid::writeSDDSData_m().

Here is the call graph for this function:

Member Data Documentation

◆ instance

Timing * IpplTimings::instance = new Timing()
staticprivate

Definition at line 232 of file IpplTimings.h.

Referenced by clearTimer(), getTimer(), infoTimer(), pop(), print(), startTimer(), stash(), and stopTimer().

◆ stashedInstance

std::stack< Timing * > IpplTimings::stashedInstance
staticprivate

Definition at line 233 of file IpplTimings.h.

Referenced by pop(), and stash().


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