Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync changes from mozilla-central gfx/wr #3904

Merged
merged 7 commits into from Apr 3, 2020
Merged

Conversation

@moz-gfx
Copy link

moz-gfx commented Apr 3, 2020

No description provided.

nical added 7 commits Apr 3, 2020
Before this patch:
 - Consume time merely is the time it takes to push something into a vector (always displays zero).
 - Total IPC time and the DisplayList IPC graph measure the time between api.set_display_list and the render backend picking the message up, plus the time it took to build the display list (but doesn't take into account the time it took for actual IPC in between).
 - Send time is only the time between api.set_display_list and the render backend picking the message up but doesn't take into account the time it took between the content thread sending the DL and the compositor thread forwarding it.

After this patch:
 - Content send time measures the time between the content thread sending the display list and the compositor forwarding it (actual IPC).
 - Api send time measures the time between the compostor thread forwarding the DL and the render backend picking it up.
 - Consume time is removed.
 - Total send time is the sum of content and api times.
 - Display list build times and display list IPC (total send time) are on separate graphs.

Depends on D69227

Differential Revision: https://phabricator.services.mozilla.com/D69228

[ghsync] From https://hg.mozilla.org/mozilla-central/rev/ea22f0b1e2a0d0a237048452f930529bc773ffbd
This removes the WebRender side of the previous slow frame indicator and replace it with a simple implementation that only looks at the CPU time on the render backend and renderer thread involved for building a frame.

A followup patch will add a separate indicator for when the displaylist/ipc/scene bits take too long.

Differential Revision: https://phabricator.services.mozilla.com/D69247

[ghsync] From https://hg.mozilla.org/mozilla-central/rev/3ca010d7a52d68e7fbc2e91edaeb980cdd6e76fb
It moves when DL building + IPC + scene building takes more than 100ms.

Depends on D69247

Differential Revision: https://phabricator.services.mozilla.com/D69254

[ghsync] From https://hg.mozilla.org/mozilla-central/rev/af4366c6c434242d656db2c4b6779dd50a35b94a
… the scene builder thread. r=jrmuizel

Instead of collecting so-called ipc counters when receving the SetDisplayList on the render backend, pass the information through the scene builder thread and update the profile on the render backend after the scene is swapped. This prevents ipc counters to be displayed while the transaction is still being processed by the scene builder thread.

Differential Revision: https://phabricator.services.mozilla.com/D69414

[ghsync] From https://hg.mozilla.org/mozilla-central/rev/1a729c8ea63134fb2746cad5639cde022ea4919b
…rs. r=jrmuizel

Few of the counters actually have anything to do with IPC although they all relate to events of layout transactions.

Depends on D69414

Differential Revision: https://phabricator.services.mozilla.com/D69415

[ghsync] From https://hg.mozilla.org/mozilla-central/rev/d2771cdff401747f61d5302cdf7a284eb851b1ce
@moz-gfx
Copy link
Author

moz-gfx commented Apr 3, 2020

@bors-servo r=auto

@bors-servo
Copy link
Contributor

bors-servo commented Apr 3, 2020

📌 Commit 9956e79 has been approved by auto

@bors-servo
Copy link
Contributor

bors-servo commented Apr 3, 2020

Testing commit 9956e79 with merge 620aff9...

@bors-servo
Copy link
Contributor

bors-servo commented Apr 3, 2020

☀️ Test successful - status-appveyor, status-taskcluster
Approved by: auto
Pushing 620aff9 to master...

@bors-servo bors-servo merged commit 620aff9 into servo:master Apr 3, 2020
3 checks passed
3 checks passed
Community-TC (pull_request) TaskGroup: success
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
homu Test successful
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.