OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Timer.cpp
Go to the documentation of this file.
1 #include "Timer.h"
2 
4  this->clear();
5 }
6 
7 
8 void Timer::clear() {
9  wall_m = user_m = sys_m = 0.0;
10 }
11 
12 
13 void Timer::start() {
14  timer_m.start();
15 }
16 
17 
18 void Timer::stop() {
19  timer_m.stop();
20 
21  boost::timer::cpu_times elapsed = timer_m.elapsed();
22 
23  wall_m += elapsed.wall;
24  user_m += elapsed.user;
25  sys_m += elapsed.system;
26 }
27 
28 
30  return wall_m * 1.0e-9;
31 }
32 
33 
34 double Timer::user_time() {
35  return user_m * 1.0e-9;
36 }
37 
38 
40  return sys_m * 1.0e-9;
41 }
42 
43 
44 double Timer::cpu_time() {
45  return (user_m + sys_m) * 1.0e-9;
46 }
double sys_m
Definition: Timer.h:25
Timer()
Definition: Timer.cpp:3
double user_m
Definition: Timer.h:24
double wall_m
Definition: Timer.h:23
double user_time()
Definition: Timer.cpp:34
void stop()
Definition: Timer.cpp:18
double system_time()
Definition: Timer.cpp:39
boost::timer::cpu_timer timer_m
Definition: Timer.h:26
void clear()
Definition: Timer.cpp:8
double clock_time()
Definition: Timer.cpp:29
double cpu_time()
Definition: Timer.cpp:44
void start()
Definition: Timer.cpp:13