Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Issue 12600018: ResourceScheduler should use renderer notifications instead of MRUCache to track renderers. (Closed)

Created:
7 years, 9 months ago by James Simonsen
Modified:
7 years, 9 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam, willchan no longer on Chromium
Visibility:
Public.

Description

ResourceScheduler should use renderer notifications instead of MRUCache to track renderers. The MRUCache enforced a hard limit on the number of navigations we could track. If we have more than that, we stop scheduling and load everything at once. That will only make performance worse. The renderer notifications should provide an accurate signal when tabs come and go. Instead of having a hard limit, we'll just follow the notifications. BUG=None Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=188777

Patch Set 1 #

Patch Set 2 : Handle cross-renderer navigation #

Patch Set 3 : Add comments #

Patch Set 4 : Remove dead code #

Total comments: 3

Patch Set 5 : Rename to RenderViewHostTracker #

Total comments: 1

Patch Set 6 : Switch to RenderViewHostObserver #

Total comments: 1

Patch Set 7 : Reverse destruction order #

Unified diffs Side-by-side diffs Delta from patch set Stats (+219 lines, -96 lines) Patch
A content/browser/loader/render_view_host_tracker.h View 1 2 3 4 5 1 chunk +56 lines, -0 lines 0 comments Download
A content/browser/loader/render_view_host_tracker.cc View 1 2 3 4 5 6 1 chunk +82 lines, -0 lines 0 comments Download
M content/browser/loader/resource_dispatcher_host_impl.h View 1 2 3 4 4 chunks +13 lines, -4 lines 0 comments Download
M content/browser/loader/resource_dispatcher_host_impl.cc View 1 2 3 4 5 6 1 chunk +13 lines, -0 lines 0 comments Download
M content/browser/loader/resource_scheduler.h View 1 2 3 4 6 chunks +10 lines, -14 lines 0 comments Download
M content/browser/loader/resource_scheduler.cc View 1 2 3 4 5 6 8 chunks +41 lines, -26 lines 0 comments Download
M content/browser/loader/resource_scheduler_unittest.cc View 1 2 3 4 2 chunks +2 lines, -15 lines 0 comments Download
M content/browser/renderer_host/render_process_host_impl.h View 1 2 3 4 1 chunk +0 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_process_host_impl.cc View 1 2 3 4 5 6 2 chunks +0 lines, -7 lines 0 comments Download
M content/browser/renderer_host/render_widget_helper.h View 1 2 3 4 2 chunks +0 lines, -4 lines 0 comments Download
M content/browser/renderer_host/render_widget_helper.cc View 1 2 3 4 2 chunks +0 lines, -17 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M content/public/browser/render_process_host.h View 1 2 3 4 1 chunk +0 lines, -4 lines 0 comments Download
M content/public/test/mock_render_process_host.h View 1 2 3 4 1 chunk +0 lines, -1 line 0 comments Download
M content/public/test/mock_render_process_host.cc View 1 2 3 4 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 14 (0 generated)
James Simonsen
7 years, 9 months ago (2013-03-12 21:59:25 UTC) #1
darin (slow to review)
https://codereview.chromium.org/12600018/diff/9001/content/browser/loader/resource_scheduler_view_observer.cc File content/browser/loader/resource_scheduler_view_observer.cc (right): https://codereview.chromium.org/12600018/diff/9001/content/browser/loader/resource_scheduler_view_observer.cc#newcode25 content/browser/loader/resource_scheduler_view_observer.cc:25: ResourceSchedulerViewObserver::~ResourceSchedulerViewObserver() { do we need to make sure that ...
7 years, 9 months ago (2013-03-13 00:12:27 UTC) #2
darin (slow to review)
NOTE: You can bind methods on ResourceDispatcherHostImpl that are intended to run on the IO ...
7 years, 9 months ago (2013-03-13 00:13:50 UTC) #3
James Simonsen
PTAL. On 2013/03/13 00:12:27, darin wrote: > https://codereview.chromium.org/12600018/diff/9001/content/browser/loader/resource_scheduler_view_observer.cc > File content/browser/loader/resource_scheduler_view_observer.cc (right): > > https://codereview.chromium.org/12600018/diff/9001/content/browser/loader/resource_scheduler_view_observer.cc#newcode25 ...
7 years, 9 months ago (2013-03-13 17:16:34 UTC) #4
James Simonsen
Ping? I have another CL that builds off this one.
7 years, 9 months ago (2013-03-14 21:21:07 UTC) #5
James Simonsen
Thanks for the tip. I've switched to using RenderViewHostObserver now.
7 years, 9 months ago (2013-03-15 21:53:10 UTC) #6
darin (slow to review)
https://codereview.chromium.org/12600018/diff/15001/content/browser/loader/resource_dispatcher_host_impl.cc File content/browser/loader/resource_dispatcher_host_impl.cc (right): https://codereview.chromium.org/12600018/diff/15001/content/browser/loader/resource_dispatcher_host_impl.cc#newcode1186 content/browser/loader/resource_dispatcher_host_impl.cc:1186: CancelRequestsForRoute(child_id, route_id); Perhaps it would be better to call ...
7 years, 9 months ago (2013-03-15 23:59:25 UTC) #7
darin (slow to review)
LGTM otherwise
7 years, 9 months ago (2013-03-15 23:59:54 UTC) #8
James Simonsen
On 2013/03/15 23:59:25, darin wrote: > https://codereview.chromium.org/12600018/diff/15001/content/browser/loader/resource_dispatcher_host_impl.cc > File content/browser/loader/resource_dispatcher_host_impl.cc (right): > > https://codereview.chromium.org/12600018/diff/15001/content/browser/loader/resource_dispatcher_host_impl.cc#newcode1186 > ...
7 years, 9 months ago (2013-03-16 00:37:53 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonjam@chromium.org/12600018/30001
7 years, 9 months ago (2013-03-16 00:40:46 UTC) #10
darin (slow to review)
On Fri, Mar 15, 2013 at 5:37 PM, <simonjam@chromium.org> wrote: > On 2013/03/15 23:59:25, darin ...
7 years, 9 months ago (2013-03-16 03:47:36 UTC) #11
commit-bot: I haz the power
Retried try job too often on win_rel for step(s) sync_integration_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win_rel&number=123506
7 years, 9 months ago (2013-03-16 05:43:49 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonjam@chromium.org/12600018/30001
7 years, 9 months ago (2013-03-18 17:52:04 UTC) #13
commit-bot: I haz the power
7 years, 9 months ago (2013-03-18 18:37:42 UTC) #14
Message was sent while issue was closed.
Change committed as 188777

Powered by Google App Engine
This is Rietveld 408576698