New issue
Advanced search Search tips

Issue 910288 link

Starred by 1 user

Issue metadata

Status: Started
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Task



Sign in to add a comment

Resource Coordinator rename, refactor and consolidation

Project Member Reported by siggi@chromium.org, Nov 29

Issue description

The bits and pieces that belong to the resource coordinator (RC) have come together rather piecemeal over a long time. There is considerable over-generalization in the current service implementation for current needs, and a lot of functionality duplication.
Implementing the RC as a service where all the usage and most of the data is sourced from content and chrome/browser makes it hard to use, and leads to some inefficiencies.

To fix this, the plan is to move the RC graph to /content/browser/resource_manager (or performance_manager), and to consolidate all data representation and all policy as direct clients of the RC graph. 

See https://docs.google.com/document/d/1NunGFCglM11FnI27K4GtMeG_RO7O-pikg7Mp4E3asCY/edit?usp=sharing, for a high-level discussion of the end goal and a plan for how to stage the refactoring.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Nov 30

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b9eb4ab264836b68dd49d39672b2a9038d9cdec3

commit b9eb4ab264836b68dd49d39672b2a9038d9cdec3
Author: Sigurdur Asgeirsson <siggi@chromium.org>
Date: Fri Nov 30 14:45:47 2018

RC: Trim some unused includes.

Bug: 910288
Change-Id: I0ab5c1d9f96662d6d5a894a93d8ed031a8655386
Reviewed-on: https://chromium-review.googlesource.com/c/1355320
Reviewed-by: François Doray <fdoray@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#612647}
[modify] https://crrev.com/b9eb4ab264836b68dd49d39672b2a9038d9cdec3/chrome/browser/resource_coordinator/render_process_probe.cc
[modify] https://crrev.com/b9eb4ab264836b68dd49d39672b2a9038d9cdec3/chrome/browser/resource_coordinator/tab_helper.cc
[modify] https://crrev.com/b9eb4ab264836b68dd49d39672b2a9038d9cdec3/content/public/test/mock_render_process_host.cc

Comment 2 by siggi@chromium.org, Jan 18 (4 days ago)

After more consultation, it has been decided to move the RC graph entirely to chrome/browser/performance_manager, and to remove all RC-related code from content/public/browser and content/browser.
Project Member

Comment 3 by bugdroid1@chromium.org, Yesterday (37 hours ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d

commit 03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d
Author: Sigurdur Asgeirsson <siggi@chromium.org>
Date: Mon Jan 21 18:17:58 2019

RC: Remove redundant metrics that won't survive the refactoring.

This removes these UKMs:
TabManager.Heuristics.FromBackgroundedToFirstAlertFired
TabManager.Heuristics.FromBackgroundedToFirstAudioStarts

As well as the ResourceCoordinator.IPC* histograms.

This is in preparation for scrubbing the RC from content/ and moving
the RC service into chrome/browser.

Bug: 910288
Change-Id: I6b0da3961d05439b26651311bccd040cbe65181e
Reviewed-on: https://chromium-review.googlesource.com/c/1422582
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: François Doray <fdoray@chromium.org>
Reviewed-by: Brian White <bcwhite@chromium.org>
Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624630}
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/content/browser/frame_host/render_frame_host_impl.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/BUILD.gn
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/coordination_unit/frame_coordination_unit_impl.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/coordination_unit/frame_coordination_unit_impl.h
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/coordination_unit/frame_coordination_unit_impl_unittest.cc
[delete] https://crrev.com/0ec491f17f72fd16ea90db2103f8fc52eade12a1/services/resource_coordinator/observers/ipc_volume_reporter.cc
[delete] https://crrev.com/0ec491f17f72fd16ea90db2103f8fc52eade12a1/services/resource_coordinator/observers/ipc_volume_reporter.h
[delete] https://crrev.com/0ec491f17f72fd16ea90db2103f8fc52eade12a1/services/resource_coordinator/observers/ipc_volume_reporter_unittest.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/observers/metrics_collector.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/observers/metrics_collector.h
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/observers/metrics_collector_unittest.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/public/cpp/frame_resource_coordinator.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/public/cpp/frame_resource_coordinator.h
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/public/mojom/coordination_unit.mojom
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/public/mojom/signals.mojom
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/services/resource_coordinator/resource_coordinator_service.cc
[modify] https://crrev.com/03d0731cbabcfa72e36d9bbe2b5afa238fd55f5d/tools/metrics/histograms/histograms.xml

Sign in to add a comment