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

Defines

#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 ()


Define Documentation

#define CH_TIMER ( name,
tpointer   ) 

Value:

const char* TimerTag_##tpointer = name ;                             \
  CH_XD::TraceTimer* tpointer = CH_XD::TraceTimer::getTimer(TimerTag_##tpointer)

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

#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)

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

#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)

#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)

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

#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)


Function Documentation

double TimerGetTimeStampWC (  )  [inline]


Generated on Wed Mar 20 03:38:07 2019 for Chombo + EB by  doxygen 1.5.5