The current implementation simply calculates deltas between timestamps of consecutive BenchmarkInstrumentation::DisplayRenderingStats events and counts a percentage of deltas that are under 17 ms.
That seems fairly arbitrary, because the timing of individual frames goes up and down and exceeding 17 ms threshold doesn't necessarily means a frame would miss v-sync deadline.
In some cases frame timing falls in the following pattern:
20.14, 11.21, 21.81, 11.54, 22.53, 11.16, 21.77, 11.31, 21.27
While half of the frames in this pattern exceed the "smooth threshold" they still average the 60 Hz rate and probably all of them make the deadline.
The suggested approach is to use GetFrameStatistics and turn that into async trace events (see http://crbug.com/614147 ).
Comment 1 by stanisc@chromium.org
, May 23 2016