New issue
Advanced search Search tips

Issue 671764 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Dec 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug



Sign in to add a comment

VisibleUnits::canonicalPosition taking 80% of the 60fps budget.

Reported by mi...@hevery.com, Dec 6 2016

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36

Steps to reproduce the problem:
1. Navigate to: https://djcordhose.github.io/angular2-react/code/vanilla/ 
2. Start profiling tools and drag any of the squares around. 
3. Notice that dev tools claim that many of the frames are too long. JavaScript is only 1ms per frame, the rest is taken up by "Other"

What is the expected behavior?
I would expect that chrome should have no issues hitting 60 fps since script time is minimal

What went wrong?
Most of the time (80%) is Spent in "Other" Lack of visibility, not actionable for WebDeveloper. 

Elliot Sprehn points out that most of the time is spent in: VisibleUnits::canonicalPosition 

Did this work before? N/A 

Chrome version: 54.0.2840.98  Channel: n/a
OS Version: OS X 10.12.1
Flash Version: Shockwave Flash 23.0 r0
 

Comment 1 by mi...@hevery.com, Dec 6 2016

trace_boxes.json.gz
6.5 MB Download
TimelineRawData-20161206T112946.json
12.7 MB View Download
Labels: M-57 Needs-Bisect

Comment 3 by ajha@chromium.org, Dec 8 2016

Cc: ajha@chromium.org
Labels: Needs-Feedback
misko@: Could you please review the attached screens-cast from chrome version: 54.0.2840.98, Mac OS 10.116. Would be great to have screen-cast of the repro steps and issue you are seeing for clearer picture.

Appreciate your help! 
671764.mp4
2.0 MB View Download

Comment 4 by mi...@hevery.com, Dec 8 2016

Sorry for the confusing repro steps.

1) open Timeline (not Profile)
2) Record timeline
3) Move a box around as before
4) Look at the resulting timeline
5) Zoom into a frame which was missed.
6) Open summary and notice that 80% of the time is spent in Other
7) Notice that Idle time is almost non existent.

Attached screenshot and screencast

Screen Shot 2016-12-08 at 1.52.45 PM.png
227 KB View Download
trace_boxes.mov
18.2 MB Download
Using "event.preventDefault()" in your "onmouse-" handlers will prevent "canonicalPosition" consuming so much.You can see how it affects on attached images.
canonical_without_prevent_default.png
223 KB View Download
canonical_with_prevent_default.png
216 KB View Download

Comment 6 by ajha@chromium.org, Dec 14 2016

misko@: Could you please review the C#5 and confirm if this helps.

Comment 7 by mi...@hevery.com, Dec 14 2016

Verified, please close. 

Comment 8 by ajha@chromium.org, Dec 14 2016

Labels: -Needs-Feedback -Needs-Bisect
Status: WontFix (was: Unconfirmed)
Thanks for the quick update. Closing as per C#7.

Sign in to add a comment