New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 789441 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug-Regression



Sign in to add a comment

40%-153.3% regression in v8.browsing_mobile at 519228:519312

Project Member Reported by jgruber@chromium.org, Nov 29 2017

Issue description

See the link to graphs below.
 
Project Member

Comment 1 by 42576172...@developer.gserviceaccount.com, Nov 29 2017

All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=789441

(For debugging:) Original alerts at time of bug-filing:
  https://chromeperf.appspot.com/group_report?sid=94c45693cccecaccdddfb59322a8264a5ec67b5884355a344379158fd2ef175e


Bot(s) for this bug's original alert(s):

android-nexus5
android-nexus5X
android-nexus7v2
android-webview-nexus5X
android-webview-nexus6
Project Member

Comment 3 by 42576172...@developer.gserviceaccount.com, Nov 29 2017

Cc: horo@chromium.org
Owner: horo@chromium.org
Status: Assigned (was: Untriaged)

=== Auto-CCing suspected CL author horo@chromium.org ===

Hi horo@chromium.org, the bisect results pointed to your CL, please take a look at the
results.


=== BISECT JOB RESULTS ===
Perf regression found with culprit

Suspected Commit
  Author : Tsuyoshi Horo
  Commit : e9cdaa227686d4e995569173d451cab0767ac48f
  Date   : Mon Nov 27 09:57:08 2017
  Subject: Add PWAFullCodeCache to fieldtrial_testing_config.json

Bisect Details
  Configuration: android_webview_nexus6_aosp_perf_bisect
  Benchmark    : v8.browsing_mobile
  Metric       : v8-gc-scavenger_max/browse_news/browse_news_washingtonpost
  Change       : 141.33% | 8.705 -> 21.008

Revision             Result                   N
chromium@519233      8.705 +- 3.25846         6      good
chromium@519247      8.04517 +- 1.18473       6      good
chromium@519254      8.65133 +- 2.08067       6      good
chromium@519258      8.25033 +- 0.685021      6      good
chromium@519260      8.74217 +- 2.81269       6      good
chromium@519261      21.008 +- 5.10061        6      bad       <--

To Run This Test
  src/tools/perf/run_benchmark -v --browser=android-webview --output-format=chartjson --upload-results --pageset-repeat=1 --also-run-disabled-tests --story-filter=browse.news.washingtonpost v8.browsing_mobile

More information on addressing performance regressions:
  http://g.co/ChromePerformanceRegressions

Debug information about this bisect:
  https://chromeperf.appspot.com/buildbucket_job_status/8961606521969329856


For feedback, file a bug with component Speed>Bisection
Project Member

Comment 4 by 42576172...@developer.gserviceaccount.com, Nov 29 2017

 Issue 789440  has been merged into this issue.

Comment 5 by horo@chromium.org, Nov 30 2017

Status: Started (was: Assigned)

Comment 6 by horo@chromium.org, Nov 30 2017

Components: Blink>ServiceWorker

Comment 7 by horo@chromium.org, Nov 30 2017

I investigated the trace of browse_news_washingtonpost_2017-11-27_17-18-45_42684 and found that a heavy GC is executed in the service worker thread while reloading the page.

https://goo.gl/wBmvCx

I think this GC on the service worker thread doesn't affect the main thread, so this GC doesn't cause any issue of the page responsiveness.
But this may block the fetch event handling on the service worker.
To mitigate the problem, we should eagerly trigger GC after creating the V8 code cache.
Project Member

Comment 8 by 42576172...@developer.gserviceaccount.com, Nov 30 2017

Issue 789439 has been merged into this issue.

Comment 9 by horo@chromium.org, Nov 30 2017

I created a CL which calls LowMemoryNotification to trigger GC when finishing service worker install event handler.
https://chromium-review.googlesource.com/c/chromium/src/+/799655

ServiceWorkerBrowserTest.CrossSiteTransfer is failing in some bots with this CL.
There may be a GC bug in Service Worker.

I will investigate it tomorrow.

Comment 10 by horo@chromium.org, Nov 30 2017

Cc: falken@chromium.org
+CC: falken@ as the owner of  issue 474976 .
Cc: pmeenan@chromium.org
 Issue 792025  has been merged into this issue.
 Issue 792024  has been merged into this issue.
 Issue 792027  has been merged into this issue.
Issue 792086 has been merged into this issue.
Issue 792087 has been merged into this issue.
Issue 792092 has been merged into this issue.
 Issue 790975  has been merged into this issue.

Comment 18 by horo@chromium.org, Jan 31 2018

Cc: simonhatch@chromium.org sullivan@chromium.org perezju@chromium.org dtu@chromium.org jochen@chromium.org
 Issue 792022  has been merged into this issue.
Hi Horo, any results yet? It looks like this benchmark just got a bit worse, probably unrelated but I stumbled onto this issue... (current graph: https://chromeperf.appspot.com/report?sid=1c3e7badb7326b2b18a70bfaeefaa16de5231fc62657302aa6b40ee8edff3be6&start_rev=507309&end_rev=534310) 

Comment 20 by horo@chromium.org, Feb 7 2018

Status: WontFix (was: Started)
PWAFullCodeCache may cause a heavy GC on the service worker thread while generating a full code cache of the JavaScript files before storing them to the CacheStorage in the install event handler.
So the v8-gc-scavenger_max was increased by e9cdaa227686d4e995569173d451cab0767ac48f.

But the GC on the service worker thread doesn't block the main thread, and the service worker doesn't control the page until the service worker is installed.
So I think this regression of v8-gc-scavenger_max is not a real problem.

But I think we should trigger GC when finishing service worker install event handler to avoid causing a heavy GC after the service worker is activated.
Filed crbug.com/809838

Sign in to add a comment