Chombo + EB  3.0
Classes | Macros | Functions
CH_Timer.H File Reference
#include <cstdio>
#include "REAL.H"
#include "MayDay.H"
#include "Vector.H"
#include "ClockTicks.H"
#include <list>
#include <string>
#include "List.H"
#include <iostream>
#include <sys/time.h>
#include "BaseNamespaceHeader.H"
#include "BaseNamespaceFooter.H"
Include dependency graph for CH_Timer.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  TraceTimer
 
class  AutoStartLeaf
 
class  AutoStart
 

Macros

#define _CH_TIMER_H_
 
#define CH_TIMER(name, tpointer)
 
#define CH_TIME(name)
 
#define CH_TIMELEAF(name)
 
#define CH_TIMERS(name)
 
#define CH_START(tpointer)   tpointer->start(&CH_Timermutex)
 
#define CH_STOP(tpointer)   tpointer->stop(&CH_Timermutex)
 
#define CH_STOPV(tpointer, val)   val = tpointer->stop(&CH_Timermutex)
 
#define CH_TIMER_REPORT()   CH_XD::TraceTimer::report()
 
#define CH_TIMER_RESET()   CH_XD::TraceTimer::reset()
 
#define CH_TIMER_PRUNE(threshold)   CH_XD::TraceTimer::PruneTimersParentChildPercent(threshold)
 

Functions

double TimerGetTimeStampWC ()
 

Macro Definition Documentation

◆ _CH_TIMER_H_

#define _CH_TIMER_H_

◆ CH_TIMER

#define CH_TIMER (   name,
  tpointer 
)
Value:
const char* TimerTag_##tpointer = name ; \
CH_XD::TraceTimer* tpointer = CH_XD::TraceTimer::getTimer(TimerTag_##tpointer)
const char * name(const FArrayBox &a_dummySpecializationArg)
Definition: CH_HDF5.H:741

Referenced by BaseEBCellFAB< Real >::copy(), ParticleVector< T, Comparator >::memsort(), PetscSolver< LevelData< FArrayBox > >::setup_solver(), BiCGStabSolver< LevelData< T > >::solve(), GMRESSolver< T >::solve(), PetscSolver< LevelData< FArrayBox > >::solve_private(), and AMRMultiGrid< LevelData< T > >::solveNoInitResid().

◆ CH_TIME

#define CH_TIME (   name)
Value:
const char* TimerTagA = name ; \
char CH_TimermutexA = 0; \
CH_XD::TraceTimer* ch_tpointer = CH_XD::TraceTimer::getTimer(TimerTagA); \
CH_XD::AutoStart autostart(ch_tpointer, &CH_TimermutexA)
const char * name(const FArrayBox &a_dummySpecializationArg)
Definition: CH_HDF5.H:741

Referenced by BoxLayoutData< EBFluxFAB >::addTo(), AggStencil< BaseIVFAB< Real >, EBCellFAB >::AggStencil(), AggStencil< BaseIVFAB< Real >, EBCellFAB >::apply(), MultilevelLinearOp< T >::applyOp(), MultilevelLinearOp< T >::assign(), MultilevelLinearOp< T >::axby(), blockWrite(), AggStencil< BaseIVFAB< Real >, EBCellFAB >::cache(), MultilevelLinearOp< T >::clear(), AMRMultiGrid< LevelData< T > >::computeAMRResidual(), AMRMultiGrid< LevelData< T > >::computeAMRResidualLevel(), CoordinateSystem< 1 >::CoordinateSystem(), BaseEBCellFAB< Real >::copy(), LevelData< EBFluxFAB >::copyTo(), MultilevelLinearOp< T >::create(), PetscSolver< LevelData< FArrayBox > >::create_mat_vec(), MultiGrid< T >::cycle(), MultilevelLinearOp< T >::define(), LevelData< EBFluxFAB >::define(), MultiGrid< T >::define(), AMRMultiGrid< LevelData< T > >::define(), MultilevelLinearOp< T >::dotProduct(), LevelData< EBFluxFAB >::exchange(), LevelData< EBFluxFAB >::exchangeBegin(), LevelData< EBFluxFAB >::exchangeEnd(), LevelData< EBFluxFAB >::exchangeNoOverlap(), MultilevelLinearOp< T >::incr(), MultiGrid< T >::init(), AMRMultiGrid< LevelData< T > >::init(), BoxLayoutData< EBFluxFAB >::makeItSoBegin(), BoxLayoutData< EBFluxFAB >::makeItSoLocalCopy(), MultilevelLinearOp< T >::norm(), MultiGrid< T >::oneCycle(), MultilevelLinearOp< T >::preCond(), regionGather(), AMRMultiGrid< LevelData< T > >::relax(), AMRMultiGrid< LevelData< T > >::relaxOnlyHomogeneous(), MultilevelLinearOp< T >::residual(), AMRMultiGrid< LevelData< T > >::revert(), MultilevelLinearOp< T >::scale(), MultilevelLinearOp< T >::setToZero(), BiCGStabSolver< LevelData< T > >::solve(), RelaxSolver< T >::solve(), MergeSolver< T >::solve(), MultiGrid< T >::solve(), AMRMultiGrid< LevelData< T > >::solve(), AMRMultiGrid< LevelData< T > >::solveNoInitResid(), AggStencil< BaseIVFAB< Real >, EBCellFAB >::uncache(), BoxLayoutData< EBFluxFAB >::unpackReceivesToMe_append(), write(), AMRMultiGrid< LevelData< T > >::~AMRMultiGrid(), BoxLayoutData< EBFluxFAB >::~BoxLayoutData(), LayoutData< Vector< IntVectSet > >::~LayoutData(), LevelData< EBFluxFAB >::~LevelData(), and MultilevelLinearOp< T >::~MultilevelLinearOp().

◆ CH_TIMELEAF

#define CH_TIMELEAF (   name)
Value:
const char* TimerTagA = name ; \
CH_XD::TraceTimer* ch_tpointer = CH_XD::TraceTimer::getTimer(TimerTagA); \
CH_XD::AutoStartLeaf autostart(ch_tpointer)
const char * name(const FArrayBox &a_dummySpecializationArg)
Definition: CH_HDF5.H:741

◆ CH_TIMERS

#define CH_TIMERS (   name)
Value:
const char* TimerTagA = name ; \
char CH_TimermutexA = 0; \
char CH_Timermutex = 0; \
CH_XD::TraceTimer* ch_tpointer = CH_XD::TraceTimer::getTimer(TimerTagA); \
CH_XD::AutoStart autostart(ch_tpointer, &CH_TimermutexA, &CH_Timermutex)
const char * name(const FArrayBox &a_dummySpecializationArg)
Definition: CH_HDF5.H:741

Referenced by BaseEBCellFAB< Real >::copy(), ParticleVector< T, Comparator >::memsort(), PetscSolver< LevelData< FArrayBox > >::setup_solver(), BiCGStabSolver< LevelData< T > >::solve(), GMRESSolver< T >::solve(), PetscSolver< LevelData< FArrayBox > >::solve_private(), and AMRMultiGrid< LevelData< T > >::solveNoInitResid().

◆ CH_START

#define CH_START (   tpointer)    tpointer->start(&CH_Timermutex)

◆ CH_STOP

#define CH_STOP (   tpointer)    tpointer->stop(&CH_Timermutex)

◆ CH_STOPV

#define CH_STOPV (   tpointer,
  val 
)    val = tpointer->stop(&CH_Timermutex)

◆ CH_TIMER_REPORT

#define CH_TIMER_REPORT ( )    CH_XD::TraceTimer::report()

◆ CH_TIMER_RESET

#define CH_TIMER_RESET ( )    CH_XD::TraceTimer::reset()

◆ CH_TIMER_PRUNE

#define CH_TIMER_PRUNE (   threshold)    CH_XD::TraceTimer::PruneTimersParentChildPercent(threshold)

Function Documentation

◆ TimerGetTimeStampWC()

double TimerGetTimeStampWC ( )
inline