12#ifndef SST_CORE_CORE_PROFILE_H
13#define SST_CORE_CORE_PROFILE_H
15#include "sst/core/warnmacros.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
31typedef CLOCK::time_point ProfData_t;
40getElapsed(
const ProfData_t& begin,
const ProfData_t& end)
42 std::chrono::duration<double> elapsed = (end - begin);
43 return elapsed.count();
47getElapsed(
const ProfData_t& since)
49 return getElapsed(since, now());
53typedef double ProfData_t;
62getElapsed(
const ProfData_t& UNUSED(begin),
const ProfData_t& UNUSED(end))
68getElapsed(
const ProfData_t& UNUSED(since))