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} 56 #endif // ABLASTR_PROFILERWRAPPER_H_ SynchronizeOnDestruct(bool const do_device_synchronize=false)
Definition: ProfilerWrapper.H:33
bool m_do_device_synchronize
Definition: ProfilerWrapper.H:41
#define AMREX_FORCE_INLINE
AMREX_FORCE_INLINE ~SynchronizeOnDestruct()
Definition: ProfilerWrapper.H:37
AMREX_FORCE_INLINE void device_synchronize(bool const do_device_synchronize=false)
Definition: ProfilerWrapper.H:23
Definition: ProfilerWrapper.H:32
void synchronize() noexcept