12 #ifndef SST_CORE_CORE_PROFILE_H
13 #define SST_CORE_CORE_PROFILE_H
23 #ifdef __SST_ENABLE_PROFILE__
25 #if defined(__GNUC__) && (__GNUC__ == 4 && __GNUC_MINOR__ < 7)
26 #define CLOCK std::chrono::system_clock
28 #define CLOCK std::chrono::steady_clock
32 typedef CLOCK::time_point ProfData_t;
34 inline ProfData_t now()
39 inline double getElapsed(
const ProfData_t &begin,
const ProfData_t &end)
41 std::chrono::duration<double> elapsed = (end - begin);
42 return elapsed.count();
46 inline double getElapsed(
const ProfData_t &since)
48 return getElapsed(since, now());
53 typedef double ProfData_t;
55 inline ProfData_t now()
60 inline double getElapsed(
const ProfData_t &begin,
const ProfData_t &end)
66 inline double getElapsed(
const ProfData_t &since)