New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 730131 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

epoch for user timing in performance timeline

Project Member Reported by cva...@gmail.com, Jun 6 2017

Issue description

Chrome Version: 58.0.3029.110 (Official Build) (64-bit)
OS: OSX 10.11.6

What steps will reproduce the problem?
(1) install the attached tampermonkey script
(2) load any webpage
(3) open up the performance tab of dev tools
(4) click "Reload page" from the performance tab
(5) when the profiling is done, expand the "user timing" section

What is the expected result?
1) 
When you create a user-timing measure with neither `startMark` nor `endMark`, `navigationStart` is used as the inferred start time:
https://www.w3.org/TR/user-timing/#dom-performance-measure

Therefore, the left edge of the "m1" measure should be 0 in the timeline. 

2) 
The value from `performance.now()` during an `onload` callback should be approx the same as the red "load event" vertical line in devtools

What happens instead?
1) 
In "m1 measure.png", the left edge of "m1" is ~26 ms.

2) 
In "onload indicator.png", they are ~34 ms apart. 
 

Comment 1 by cva...@gmail.com, Jun 6 2017

user-timing-measure.js.user.js
503 bytes View Download
m1 measure.png
56.2 KB View Download
onload indicator.png
176 KB View Download

Comment 2 Deleted

Comment 3 by cva...@gmail.com, Jun 6 2017

Description: Show this description

Comment 4 by cva...@gmail.com, Aug 17 2017

Description: Show this description
Components: Blink>PerformanceAPIs
could you clarify if the issue is with the timestamp from measure OR an issue with Devtools rendering? Can you print out the timestamp value?

Comment 7 by cva...@gmail.com, Aug 24 2017

Almost certain that `_minimumRecordTime` is being used as the epoch for all the times in the flame chart. 
https://cs.chromium.org/chromium/src/third_party/WebKit/Source/devtools/front_end/timeline_model/TimelineFrameModel.js?type=cs&q=_minimumRecordTime&sq=package:chromium&l=257

See my screenshot. Everything is "off" by the Start Time of the first event (beforeunload).
devtools.tiff
1.4 MB Download

Comment 8 by cva...@gmail.com, Aug 24 2017

meaning, from the screenshot ^^^,  206 - 23 ~= 182

Comment 9 by panicker@google.com, Aug 25 2017

Cc: panicker@chromium.org addyo@chromium.org ilipwalton@chromium.org
Components: -Blink>PerformanceAPIs Platform>DevTools>Performance
Status: Unconfirmed (was: Untriaged)
Seems like a DevTools issue, update bug component.
Owner: caseq@chromium.org
Status: Assigned (was: Unconfirmed)
We don't crop recording at all, what we do is:
1) start recording
2) reload the page

as a result, navigationStart is non-0 on the timeline. You can have seconds of beforeunload there.

But we can try trimming and see how it feels...

Sign in to add a comment