8 #ifndef ABLASTR_PROFILERWRAPPER_H_
9 #define ABLASTR_PROFILERWRAPPER_H_
24 if (do_device_synchronize)
49 #define ABLASTR_PROFILE(fname, sync) ablastr::profiler::device_synchronize(sync); BL_PROFILE(fname); ablastr::profiler::SynchronizeOnDestruct BL_PROFILE_PASTE(SYNC_SCOPE_, __COUNTER__){sync}
50 #define ABLASTR_PROFILE_VAR(fname, vname, sync) ablastr::profiler::device_synchronize(sync); BL_PROFILE_VAR(fname, vname); ablastr::profiler::SynchronizeOnDestruct SYNC_V_##vname{sync}
51 #define ABLASTR_PROFILE_VAR_NS(fname, vname, sync) BL_PROFILE_VAR_NS(fname, vname); ablastr::profiler::SynchronizeOnDestruct SYNC_V_##vname{sync}
52 #define ABLASTR_PROFILE_VAR_START(vname, sync) ablastr::profiler::device_synchronize(sync); BL_PROFILE_VAR_START(vname)
53 #define ABLASTR_PROFILE_VAR_STOP(vname, sync) ablastr::profiler::device_synchronize(sync); BL_PROFILE_VAR_STOP(vname)
54 #define ABLASTR_PROFILE_REGION(rname, sync) ablastr::profiler::device_synchronize(sync); BL_PROFILE_REGION(rname); ablastr::profiler::SynchronizeOnDestruct BL_PROFILE_PASTE(SYNC_R_, __COUNTER__){sync}
#define AMREX_FORCE_INLINE
AMREX_FORCE_INLINE void device_synchronize(bool const do_device_synchronize=false)
Definition: ProfilerWrapper.H:23
Definition: average.cpp:23
void synchronize() noexcept
Definition: ProfilerWrapper.H:32
AMREX_FORCE_INLINE ~SynchronizeOnDestruct()
Definition: ProfilerWrapper.H:37
SynchronizeOnDestruct(bool const do_device_synchronize=false)
Definition: ProfilerWrapper.H:33
bool m_do_device_synchronize
Definition: ProfilerWrapper.H:41