New issue
Advanced search Search tips

Issue 836898 link

Starred by 5 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2
Cc:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 784633



Sign in to add a comment

Inferencing for tab discarding

Project Member Reported by michae...@chromium.org, Apr 25 2018

Issue description

Use ML models of tab reactivation as a signal when deciding which tab(s) to discard.

See the parent bug for more info, in particular the design doc at http://go/improved-tab-discarding.
 
Labels: M-68
Project Member

Comment 2 by bugdroid1@chromium.org, May 14 2018

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

commit 34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b
Author: Michael Giuffrida <michaelpg@chromium.org>
Date: Mon May 14 17:15:48 2018

Tab Ranker: Predict reactivation of tabs

Adds an ML model to score tabs based on whether they will be
reactivated. Currently this is only used in tests; a future CL will add
an experiment to use these scores as part of the tab discarder's tab
selection algorithm.

The model includes hard-coded weights generated by tf.native. This is
documented in tab_ranker/native_inference.md.

Bug:  836898 
Change-Id: I6445de4d80fa5c5c1487d4fa2a90e9f118f9c691
Reviewed-on: https://chromium-review.googlesource.com/1028583
Reviewed-by: François Doray <fdoray@chromium.org>
Reviewed-by: Brian White <bcwhite@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Michael Giuffrida <michaelpg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558348}
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/.gn
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/BUILD.gn
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/browser_resources.grd
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_activity_watcher.cc
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_activity_watcher.h
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_activity_watcher_browsertest.cc
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_metrics_logger.cc
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_metrics_logger.h
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_metrics_logger_unittest.cc
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/BUILD.gn
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/OWNERS
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/README.md
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/example_preprocessor_config.pb
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/mru_features.h
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/native_inference.cc
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/native_inference.h
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/native_inference.md
[rename] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/tab_features.cc
[rename] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/tab_features.h
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/tab_score_predictor.cc
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/tab_score_predictor.h
[add] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/tab_score_predictor_unittest.cc
[rename] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/window_features.cc
[rename] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/resource_coordinator/tab_ranker/window_features.h
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/ui/tabs/window_activity_watcher.cc
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/browser/ui/tabs/window_activity_watcher.h
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/chrome/test/BUILD.gn
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/34882499b58a56b37e8ff0c8bb2b9fdbe4aabf3b/tools/metrics/histograms/histograms.xml

Project Member

Comment 3 by bugdroid1@chromium.org, May 18 2018

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

commit 7e7d57d829206683340aa24faba74a2a54d5fc6f
Author: Michael Giuffrida <michaelpg@chromium.org>
Date: Fri May 18 00:00:06 2018

Show reactivation score in Discards UI

Adds the Tab Ranker reactivation prediction as a column in
chrome://discards.

The reactivation score is only calculated while this WebUI
is open.

Bug:  836898 

Cq-Include-Trybots: master.tryserver.chromium.linux:closure_compilation
Change-Id: Idc0c55ca2e6832ac6033afe2c58784d2a2ed1917
Reviewed-on: https://chromium-review.googlesource.com/1036596
Reviewed-by: Will Harris <wfh@chromium.org>
Reviewed-by: Chris Hamilton <chrisha@chromium.org>
Commit-Queue: Michael Giuffrida <michaelpg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559741}
[modify] https://crrev.com/7e7d57d829206683340aa24faba74a2a54d5fc6f/chrome/browser/resource_coordinator/tab_activity_watcher.cc
[modify] https://crrev.com/7e7d57d829206683340aa24faba74a2a54d5fc6f/chrome/browser/resources/discards/discards.html
[modify] https://crrev.com/7e7d57d829206683340aa24faba74a2a54d5fc6f/chrome/browser/resources/discards/discards.js
[modify] https://crrev.com/7e7d57d829206683340aa24faba74a2a54d5fc6f/chrome/browser/ui/webui/discards/discards.mojom
[modify] https://crrev.com/7e7d57d829206683340aa24faba74a2a54d5fc6f/chrome/browser/ui/webui/discards/discards_ui.cc

Project Member

Comment 4 by bugdroid1@chromium.org, May 22 2018

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

commit de251ef1db042969dca0942a021a779b764a30de
Author: Michael Giuffrida <michaelpg@chromium.org>
Date: Tue May 22 00:47:57 2018

Sort tabs for discarding using TabRanker if enabled

Adds a |score| field to LifecycleUnit::SortKey that is used for ranking
tabs for discarding if the TabFeatures experiment is enabled. Tabs will
be sorted first by their reactivation score, then by focused time as a
tiebreaker.

If TabFeatures is disabled (the default), the score is not calculated
or used.

Because calculating the score is somewhat computationally involved,
this exposes the LifecycleUnit's last forgerounded time outside of the
SortKey itself.

Bug:  836898 
Change-Id: Ib27e43ccee06a6dab27fd950773822e64e8de9ec
Reviewed-on: https://chromium-review.googlesource.com/1063176
Commit-Queue: Michael Giuffrida <michaelpg@chromium.org>
Reviewed-by: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560436}
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/discard_metrics_lifecycle_unit_observer.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/discard_metrics_lifecycle_unit_observer_unittest.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/lifecycle_unit.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/lifecycle_unit.h
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/lifecycle_unit_base_unittest.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/lifecycle_unit_unittest.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_lifecycle_unit.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_lifecycle_unit.h
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_lifecycle_unit_source_unittest.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_lifecycle_unit_unittest.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_manager_delegate_chromeos_unittest.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_manager_features.cc
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/resource_coordinator/tab_manager_features.h
[modify] https://crrev.com/de251ef1db042969dca0942a021a779b764a30de/chrome/browser/ui/webui/discards/discards_ui.cc

Status: Fixed (was: Started)

Sign in to add a comment