Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upServo enters death spiral if frontend outpaces webrender backend #16621
Labels
Comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
If you simulate the webrender backend struggling by adding the following to the
ApiMsg::SetDisplayListhandler inrender_backend.rs:servo enters a death spiral where it just endlessly piles display lists into the queue for webrender to render. Each frame gains ever-increasing latency, and any attempt to interact with the page (i.e. scrolling) triggers a complete lock up, as the system blocks on catching up.
You can visibly see this with -Zwr-stats, as the "message send time" begins to monotonically climb (message send time being
time_display_list_processed - time_display_list_built).In more realistic situations where we only falter for a few frames, this causes perceptible lag in interactions.