31 #ifndef OPENVDB_UTIL_CPUTIMER_HAS_BEEN_INCLUDED
32 #define OPENVDB_UTIL_CPUTIMER_HAS_BEEN_INCLUDED
35 #include <tbb/tick_count.h>
59 inline void start() { mT0 = tbb::tick_count::now(); }
63 inline void start(
const std::string& msg)
65 std::cerr << msg <<
" ... ";
71 inline void restart(
const std::string& msg)
80 tbb::tick_count::interval_t dt = tbb::tick_count::now() - mT0;
81 return 1000.0*dt.seconds();
87 const double t = this->delta();
88 std::ostringstream ostr;
89 ostr <<
"completed in " << std::setprecision(3) << t <<
" ms\n";
90 std::cerr << ostr.str();
103 #endif // OPENVDB_UTIL_CPUTIMER_HAS_BEEN_INCLUDED
Simple timer for basic profiling.
Definition: CpuTimer.h:50
double delta() const
Return Time diference in milliseconds since construction or start was called.
Definition: CpuTimer.h:78
void start(const std::string &msg)
Print message and re-start timer.
Definition: CpuTimer.h:63
void stop() const
Prints time in milliseconds since construction or start was called.
Definition: CpuTimer.h:85
#define OPENVDB_VERSION_NAME
Definition: version.h:43
Definition: Exceptions.h:39
void start()
Restart timer.
Definition: CpuTimer.h:59
CpuTimer()
Initiate timer.
Definition: CpuTimer.h:55
#define OPENVDB_USE_VERSION_NAMESPACE
Definition: version.h:71
void restart(const std::string &msg)
Stops previous timer, print message and re-start timer.
Definition: CpuTimer.h:71