19 #ifndef OPAL_MCA_TIMER_DARWIN_TIMER_DARWIN_H
20 #define OPAL_MCA_TIMER_DARWIN_TIMER_DARWIN_H
22 #include "opal_config.h"
23 #include <mach/mach_time.h>
25 typedef uint64_t opal_timer_t;
28 OPAL_DECLSPEC
extern opal_timer_t opal_timer_darwin_freq;
31 static inline opal_timer_t
32 opal_timer_base_get_cycles(
void)
37 return mach_absolute_time();
41 static inline opal_timer_t
42 opal_timer_base_get_usec(
void)
45 return mach_absolute_time() * 1000000 / opal_timer_darwin_freq;
49 static inline opal_timer_t
50 opal_timer_base_get_freq(
void)
52 return opal_timer_darwin_freq;
56 #define OPAL_TIMER_CYCLE_NATIVE 1
57 #define OPAL_TIMER_CYCLE_SUPPORTED 1
58 #define OPAL_TIMER_USEC_NATIVE 0
59 #define OPAL_TIMER_USEC_SUPPORTED 1