diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/VisualBench/TimingStateMachine.cpp | 10 | ||||
-rw-r--r-- | tools/VisualBench/TimingStateMachine.h | 2 |
2 files changed, 6 insertions, 6 deletions
diff --git a/tools/VisualBench/TimingStateMachine.cpp b/tools/VisualBench/TimingStateMachine.cpp index 85aab42ba9..4dfa3f5755 100644 --- a/tools/VisualBench/TimingStateMachine.cpp +++ b/tools/VisualBench/TimingStateMachine.cpp @@ -14,6 +14,8 @@ DEFINE_int32(gpuFrameLag, 5, "Overestimate of maximum number of frames GPU is al DEFINE_int32(frames, 5, "Number of frames of each skp to render per sample."); DEFINE_double(loopMs, 5, "Each benchmark will be tuned until it takes loopsMs millseconds."); +static double now_ms() { return SkTime::GetNSecs() * 1e-6; } + TimingStateMachine::TimingStateMachine() : fCurrentFrame(0) , fLoops(1) @@ -28,7 +30,7 @@ TimingStateMachine::ParentEvents TimingStateMachine::nextFrame(bool preWarmBetwe case kPreWarm_State: { if (fCurrentFrame >= FLAGS_gpuFrameLag) { fCurrentFrame = 0; - fTimer.start(); + fStartTime = now_ms(); fState = kTiming_State; } else { fCurrentFrame++; @@ -63,7 +65,7 @@ TimingStateMachine::ParentEvents TimingStateMachine::nextFrame(bool preWarmBetwe if (preWarmBetweenSamples) { fState = kPreWarm_State; } else { - fTimer.start(); // start timing again, don't change state + fStartTime = now_ms(); } } else { fCurrentFrame++; @@ -78,13 +80,11 @@ TimingStateMachine::ParentEvents TimingStateMachine::nextFrame(bool preWarmBetwe } inline double TimingStateMachine::elapsed() { - fTimer.end(); - return fTimer.fWall; + return now_ms() - fStartTime; } void TimingStateMachine::resetTimingState() { fCurrentFrame = 0; - fTimer = WallTimer(); } void TimingStateMachine::recordMeasurement() { diff --git a/tools/VisualBench/TimingStateMachine.h b/tools/VisualBench/TimingStateMachine.h index 3f40b6d31f..322c333f03 100644 --- a/tools/VisualBench/TimingStateMachine.h +++ b/tools/VisualBench/TimingStateMachine.h @@ -67,7 +67,7 @@ private: int fCurrentFrame; int fLoops; double fLastMeasurement; - WallTimer fTimer; + double fStartTime; State fState; InnerState fInnerState; }; |