Bug 155038 - Max out timer throttling immediately for pre-render pages
Summary: Max out timer throttling immediately for pre-render pages
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit Misc. (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Gavin Barraclough
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-04 13:31 PST by Gavin Barraclough
Modified: 2016-03-04 13:56 PST (History)
1 user (show)

See Also:


Attachments
Fix (3.84 KB, patch)
2016-03-04 13:41 PST, Gavin Barraclough
cdumez: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Gavin Barraclough 2016-03-04 13:31:47 PST
If a hidden page has never been visible, no need to gently ramp into throttling - treat it the same as a page that has been viewed, but has been in the background for a long time.

Why? The throttling mechanism scales with the amount of background work by shifting the limit - once all background pages have maxed out the limit, they should no longer be burden of the system. However the mechanism doesn't currently do anything to accelerate towards the limit based on the number of pages in the ramp up phase, and ramp up duration is proportional to limit (so ramping up to a high limit takes a long time). So if you quickly create a large number of hidden pages the system may be under excessive load for a while, as we slowly ramp up to a limit that will adequately constrain resource consumption. In cases where a large number of hidden pages are rapidly generated, many likely remain in the pre-render state, so this mitigation should typically help.
Comment 1 Gavin Barraclough 2016-03-04 13:41:10 PST
Created attachment 273034 [details]
Fix
Comment 2 Chris Dumez 2016-03-04 13:51:52 PST
Comment on attachment 273034 [details]
Fix

r=me
Comment 3 Gavin Barraclough 2016-03-04 13:56:49 PST
Transmitting file data ..
Committed revision 197588.