cdo_wtime.h 474 Bytes
Newer Older
1 2
#ifndef CDO_WTIME_H
#define CDO_WTIME_H
3

4
#ifdef _OPENMP
5
//#define CDO_USE_OMP_WTIME
6 7 8
#endif

#ifdef CDO_USE_OMP_WTIME
9

Uwe Schulzweida's avatar
Uwe Schulzweida committed
10 11 12 13 14 15 16 17 18 19 20 21 22
#ifdef _OPENMP
#include <omp.h>  // omp_get_wtime
#endif

inline double
cdo_get_wtime()
{
#ifdef _OPENMP
  return omp_get_wtime();
#else
  return 0;
#endif
}
23 24 25 26 27 28 29 30

#else

#include <chrono>

inline double
cdo_get_wtime()
{
31 32
  using namespace std::chrono;
  return duration_cast<duration<double>>(steady_clock::now().time_since_epoch()).count();
33 34 35
}

#endif
36 37

#endif