#include <Timer.h>
Public Types | |
enum | State { Running, Paused } |
enum | { MaxNameLength = 32 } |
Public Member Functions | |
Timer (String const &name, State initialState=Paused) | |
~Timer () | |
void | reset (String const &name, State newState) |
String const & | name () const |
double | elapsed (bool timeCalled=false) |
double | cpu (bool called=false) |
double | user_cpu (bool called=false) |
double | system_cpu (bool called=false) |
long | max_memory (bool called=false) |
long | shared_memory (bool called=false) |
long | unshared_data_memory (bool called=false) |
long | unshared_stack_memory (bool called=false) |
long | minor_page_faults (bool called=false) |
long | major_page_faults (bool called=false) |
long | page_faults (bool called=false) |
long | blocked_input_ops (bool called=false) |
long | blocked_output_ops (bool called=false) |
void | pause () |
void | cont () |
void | getTimes (double &elapsed, double &user_cpu, double &system_cpu, double &cpu, long &max_memory, long &shared_memory, long &unshared_data_memory, long &unshared_stack_memory, long &page_faults, long &minor_page_faults, long &major_page_faults, long &blocked_input_ops, long &blocked_output_ops) |
Private Member Functions | |
Timer (Timer const &) | |
Timer & | operator= (Timer const &) |
void | updateResourceUsage () |
void | updateTime () |
double | currentElapsed () |
double | currentCpu () |
double | currentUserCpu () |
double | currentSystemCpu () |
long | currentMaxMemory () |
long | currentSharedMemory () |
long | currentUnsharedDataMemory () |
long | currentUnsharedStackMemory () |
long | currentPageFaults () |
long | currentMinorPageFaults () |
long | currentMajorPageFaults () |
long | currentBlockedInputOps () |
long | currentBlockedOutputOps () |
void | start () |
Private Attributes | |
State | state |
time_t | time_now |
struct rusage | resource_usage |
String | label |
double | time_start |
double | cpu_start |
double | user_cpu_start |
double | system_cpu_start |
long | max_memory_start |
long | shared_memory_start |
long | unshared_data_memory_start |
long | unshared_stack_memory_start |
long | page_faults_start |
long | major_page_faults_start |
long | minor_page_faults_start |
long | blocked_input_ops_start |
long | blocked_output_ops_start |
double | time_accum |
double | cpu_accum |
double | user_cpu_accum |
double | system_cpu_accum |
long | max_memory_accum |
long | shared_memory_accum |
long | unshared_data_memory_accum |
long | unshared_stack_memory_accum |
long | page_faults_accum |
long | minor_page_faults_accum |
long | major_page_faults_accum |
long | blocked_input_ops_accum |
long | blocked_output_ops_accum |
Definition at line 23 of file Timer.h.
enum Timer::State |
Timer::Timer | ( | Timer const & | ) | [private] |
long int Timer::blocked_input_ops | ( | bool | called = false |
) |
Definition at line 228 of file Timer.cpp.
References blocked_input_ops_accum, blocked_input_ops_start, currentBlockedInputOps(), Running, state, and updateResourceUsage().
Referenced by getTimes().
long int Timer::blocked_output_ops | ( | bool | called = false |
) |
Definition at line 241 of file Timer.cpp.
References blocked_output_ops_accum, blocked_output_ops_start, currentBlockedOutputOps(), Running, state, and updateResourceUsage().
Referenced by getTimes().
void Timer::cont | ( | ) |
double Timer::cpu | ( | bool | called = false |
) |
Definition at line 98 of file Timer.cpp.
References cpu_accum, cpu_start, currentCpu(), Running, state, and updateResourceUsage().
Referenced by getTimes().
long Timer::currentBlockedInputOps | ( | ) | [inline, private] |
Definition at line 199 of file Timer.h.
References resource_usage.
Referenced by blocked_input_ops(), pause(), and start().
long Timer::currentBlockedOutputOps | ( | ) | [inline, private] |
Definition at line 204 of file Timer.h.
References resource_usage.
Referenced by blocked_output_ops(), pause(), and start().
double Timer::currentCpu | ( | ) | [inline, private] |
Definition at line 147 of file Timer.h.
References currentSystemCpu(), and currentUserCpu().
double Timer::currentElapsed | ( | ) | [inline, private] |
long Timer::currentMajorPageFaults | ( | ) | [inline, private] |
Definition at line 194 of file Timer.h.
References resource_usage.
Referenced by currentPageFaults(), major_page_faults(), pause(), and start().
long Timer::currentMaxMemory | ( | ) | [inline, private] |
Definition at line 164 of file Timer.h.
References resource_usage.
Referenced by max_memory(), pause(), and start().
long Timer::currentMinorPageFaults | ( | ) | [inline, private] |
Definition at line 189 of file Timer.h.
References resource_usage.
Referenced by currentPageFaults(), minor_page_faults(), pause(), and start().
long Timer::currentPageFaults | ( | ) | [inline, private] |
Definition at line 184 of file Timer.h.
References currentMajorPageFaults(), and currentMinorPageFaults().
Referenced by page_faults(), pause(), and start().
long Timer::currentSharedMemory | ( | ) | [inline, private] |
Definition at line 169 of file Timer.h.
References resource_usage.
Referenced by pause(), shared_memory(), and start().
double Timer::currentSystemCpu | ( | ) | [inline, private] |
Definition at line 158 of file Timer.h.
References resource_usage.
Referenced by currentCpu(), pause(), start(), and system_cpu().
long Timer::currentUnsharedDataMemory | ( | ) | [inline, private] |
Definition at line 174 of file Timer.h.
References resource_usage.
Referenced by pause(), start(), and unshared_data_memory().
long Timer::currentUnsharedStackMemory | ( | ) | [inline, private] |
Definition at line 179 of file Timer.h.
References resource_usage.
Referenced by pause(), start(), and unshared_stack_memory().
double Timer::currentUserCpu | ( | ) | [inline, private] |
Definition at line 152 of file Timer.h.
References resource_usage.
Referenced by currentCpu(), pause(), start(), and user_cpu().
double Timer::elapsed | ( | bool | timeCalled = false |
) |
Definition at line 85 of file Timer.cpp.
References currentElapsed(), Running, state, time_accum, time_start, and updateTime().
Referenced by getTimes().
void Timer::getTimes | ( | double & | elapsed, | |
double & | user_cpu, | |||
double & | system_cpu, | |||
double & | cpu, | |||
long & | max_memory, | |||
long & | shared_memory, | |||
long & | unshared_data_memory, | |||
long & | unshared_stack_memory, | |||
long & | page_faults, | |||
long & | minor_page_faults, | |||
long & | major_page_faults, | |||
long & | blocked_input_ops, | |||
long & | blocked_output_ops | |||
) |
Definition at line 286 of file Timer.cpp.
References blocked_input_ops(), blocked_output_ops(), cpu(), elapsed(), major_page_faults(), max_memory(), minor_page_faults(), page_faults(), shared_memory(), system_cpu(), unshared_data_memory(), unshared_stack_memory(), updateResourceUsage(), updateTime(), and user_cpu().
Referenced by operator<<().
long int Timer::major_page_faults | ( | bool | called = false |
) |
Definition at line 215 of file Timer.cpp.
References currentMajorPageFaults(), major_page_faults_accum, major_page_faults_start, Running, state, and updateResourceUsage().
Referenced by getTimes().
long int Timer::max_memory | ( | bool | called = false |
) |
Definition at line 137 of file Timer.cpp.
References currentMaxMemory(), max_memory_accum, max_memory_start, Running, state, and updateResourceUsage().
Referenced by getTimes().
long int Timer::minor_page_faults | ( | bool | called = false |
) |
Definition at line 202 of file Timer.cpp.
References currentMinorPageFaults(), minor_page_faults_accum, minor_page_faults_start, Running, state, and updateResourceUsage().
Referenced by getTimes().
String const & Timer::name | ( | ) | const |
long int Timer::page_faults | ( | bool | called = false |
) |
Definition at line 189 of file Timer.cpp.
References currentPageFaults(), page_faults_accum, page_faults_start, Running, state, and updateResourceUsage().
Referenced by getTimes().
void Timer::pause | ( | ) |
Definition at line 254 of file Timer.cpp.
References blocked_input_ops_accum, blocked_input_ops_start, blocked_output_ops_accum, blocked_output_ops_start, cpu_accum, cpu_start, currentBlockedInputOps(), currentBlockedOutputOps(), currentCpu(), currentElapsed(), currentMajorPageFaults(), currentMaxMemory(), currentMinorPageFaults(), currentPageFaults(), currentSharedMemory(), currentSystemCpu(), currentUnsharedDataMemory(), currentUnsharedStackMemory(), currentUserCpu(), major_page_faults_accum, major_page_faults_start, max_memory_accum, max_memory_start, minor_page_faults_accum, minor_page_faults_start, page_faults_accum, page_faults_start, Paused, Running, shared_memory_accum, shared_memory_start, state, system_cpu_accum, system_cpu_start, time_accum, time_start, unshared_data_memory_accum, unshared_data_memory_start, unshared_stack_memory_accum, unshared_stack_memory_start, updateResourceUsage(), updateTime(), user_cpu_accum, and user_cpu_start.
Definition at line 72 of file Timer.cpp.
References blocked_input_ops_accum, blocked_output_ops_accum, cpu_accum, label, major_page_faults_accum, max_memory_accum, minor_page_faults_accum, page_faults_accum, Paused, shared_memory_accum, start(), state, system_cpu_accum, time_accum, unshared_data_memory_accum, unshared_stack_memory_accum, and user_cpu_accum.
Referenced by Timer().
long int Timer::shared_memory | ( | bool | called = false |
) |
Definition at line 150 of file Timer.cpp.
References currentSharedMemory(), Running, shared_memory_accum, shared_memory_start, state, and updateResourceUsage().
Referenced by getTimes().
void Timer::start | ( | ) | [inline, private] |
Definition at line 209 of file Timer.h.
References blocked_input_ops_start, blocked_output_ops_start, cpu_start, currentBlockedInputOps(), currentBlockedOutputOps(), currentCpu(), currentElapsed(), currentMajorPageFaults(), currentMaxMemory(), currentMinorPageFaults(), currentPageFaults(), currentSharedMemory(), currentSystemCpu(), currentUnsharedDataMemory(), currentUnsharedStackMemory(), currentUserCpu(), major_page_faults_start, max_memory_start, minor_page_faults_start, page_faults_start, shared_memory_start, system_cpu_start, time_start, unshared_data_memory_start, unshared_stack_memory_start, updateResourceUsage(), updateTime(), and user_cpu_start.
double Timer::system_cpu | ( | bool | called = false |
) |
Definition at line 124 of file Timer.cpp.
References currentSystemCpu(), Running, state, system_cpu_accum, system_cpu_start, and updateResourceUsage().
Referenced by getTimes().
long int Timer::unshared_data_memory | ( | bool | called = false |
) |
Definition at line 163 of file Timer.cpp.
References currentUnsharedDataMemory(), Running, state, unshared_data_memory_accum, unshared_data_memory_start, and updateResourceUsage().
Referenced by getTimes().
long int Timer::unshared_stack_memory | ( | bool | called = false |
) |
Definition at line 176 of file Timer.cpp.
References currentUnsharedStackMemory(), Running, state, unshared_stack_memory_accum, unshared_stack_memory_start, and updateResourceUsage().
Referenced by getTimes().
void Timer::updateResourceUsage | ( | ) | [inline, private] |
Definition at line 132 of file Timer.h.
References resource_usage.
Referenced by blocked_input_ops(), blocked_output_ops(), cpu(), getTimes(), major_page_faults(), max_memory(), minor_page_faults(), page_faults(), pause(), shared_memory(), start(), system_cpu(), unshared_data_memory(), unshared_stack_memory(), and user_cpu().
void Timer::updateTime | ( | ) | [inline, private] |
double Timer::user_cpu | ( | bool | called = false |
) |
Definition at line 111 of file Timer.cpp.
References currentUserCpu(), Running, state, updateResourceUsage(), user_cpu_accum, and user_cpu_start.
Referenced by getTimes().
long Timer::blocked_input_ops_accum [private] |
Definition at line 123 of file Timer.h.
Referenced by blocked_input_ops(), pause(), and reset().
long Timer::blocked_input_ops_start [private] |
Definition at line 109 of file Timer.h.
Referenced by blocked_input_ops(), pause(), and start().
long Timer::blocked_output_ops_accum [private] |
Definition at line 124 of file Timer.h.
Referenced by blocked_output_ops(), pause(), and reset().
long Timer::blocked_output_ops_start [private] |
Definition at line 110 of file Timer.h.
Referenced by blocked_output_ops(), pause(), and start().
double Timer::cpu_accum [private] |
double Timer::cpu_start [private] |
String Timer::label [private] |
long Timer::major_page_faults_accum [private] |
Definition at line 122 of file Timer.h.
Referenced by major_page_faults(), pause(), and reset().
long Timer::major_page_faults_start [private] |
Definition at line 107 of file Timer.h.
Referenced by major_page_faults(), pause(), and start().
long Timer::max_memory_accum [private] |
Definition at line 116 of file Timer.h.
Referenced by max_memory(), pause(), and reset().
long Timer::max_memory_start [private] |
Definition at line 102 of file Timer.h.
Referenced by max_memory(), pause(), and start().
long Timer::minor_page_faults_accum [private] |
Definition at line 121 of file Timer.h.
Referenced by minor_page_faults(), pause(), and reset().
long Timer::minor_page_faults_start [private] |
Definition at line 108 of file Timer.h.
Referenced by minor_page_faults(), pause(), and start().
long Timer::page_faults_accum [private] |
Definition at line 120 of file Timer.h.
Referenced by page_faults(), pause(), and reset().
long Timer::page_faults_start [private] |
Definition at line 106 of file Timer.h.
Referenced by page_faults(), pause(), and start().
struct rusage Timer::resource_usage [private] |
Definition at line 95 of file Timer.h.
Referenced by currentBlockedInputOps(), currentBlockedOutputOps(), currentMajorPageFaults(), currentMaxMemory(), currentMinorPageFaults(), currentSharedMemory(), currentSystemCpu(), currentUnsharedDataMemory(), currentUnsharedStackMemory(), currentUserCpu(), and updateResourceUsage().
long Timer::shared_memory_accum [private] |
Definition at line 117 of file Timer.h.
Referenced by pause(), reset(), and shared_memory().
long Timer::shared_memory_start [private] |
Definition at line 103 of file Timer.h.
Referenced by pause(), shared_memory(), and start().
State Timer::state [private] |
Definition at line 92 of file Timer.h.
Referenced by blocked_input_ops(), blocked_output_ops(), cont(), cpu(), elapsed(), major_page_faults(), max_memory(), minor_page_faults(), page_faults(), pause(), reset(), shared_memory(), system_cpu(), unshared_data_memory(), unshared_stack_memory(), and user_cpu().
double Timer::system_cpu_accum [private] |
Definition at line 115 of file Timer.h.
Referenced by pause(), reset(), and system_cpu().
double Timer::system_cpu_start [private] |
Definition at line 101 of file Timer.h.
Referenced by pause(), start(), and system_cpu().
double Timer::time_accum [private] |
time_t Timer::time_now [private] |
Definition at line 94 of file Timer.h.
Referenced by currentElapsed(), and updateTime().
double Timer::time_start [private] |
long Timer::unshared_data_memory_accum [private] |
Definition at line 118 of file Timer.h.
Referenced by pause(), reset(), and unshared_data_memory().
long Timer::unshared_data_memory_start [private] |
Definition at line 104 of file Timer.h.
Referenced by pause(), start(), and unshared_data_memory().
long Timer::unshared_stack_memory_accum [private] |
Definition at line 119 of file Timer.h.
Referenced by pause(), reset(), and unshared_stack_memory().
long Timer::unshared_stack_memory_start [private] |
Definition at line 105 of file Timer.h.
Referenced by pause(), start(), and unshared_stack_memory().
double Timer::user_cpu_accum [private] |
Definition at line 114 of file Timer.h.
Referenced by pause(), reset(), and user_cpu().
double Timer::user_cpu_start [private] |
Definition at line 100 of file Timer.h.
Referenced by pause(), start(), and user_cpu().