12 #ifndef SST_CORE_CORE_PROFILE_H 13 #define SST_CORE_CORE_PROFILE_H 15 #include "sst/core/warnmacros.h" 21 #ifdef __SST_ENABLE_PROFILE__ 23 #if defined(__GNUC__) && (__GNUC__ == 4 && __GNUC_MINOR__ < 7) 24 #define CLOCK std::chrono::system_clock 26 #define CLOCK std::chrono::steady_clock 29 using ProfData_t = CLOCK::time_point;
38 getElapsed(
const ProfData_t& begin,
const ProfData_t& end)
40 std::chrono::duration<double> elapsed = (end - begin);
41 return elapsed.count();
45 getElapsed(
const ProfData_t& since)
47 return getElapsed(since, now());
51 using ProfData_t = double;
60 getElapsed(
const ProfData_t& UNUSED(begin),
const ProfData_t& UNUSED(end))
66 getElapsed(
const ProfData_t& UNUSED(since))
75 #endif // SST_CORE_CORE_PROFILE_H