New issue
Advanced search Search tips

Issue 617720 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Closed: Jun 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug-Regression



Sign in to add a comment

7% regression in media.tough_video_cases at 397172:397198

Project Member Reported by dalecur...@chromium.org, Jun 6 2016

Issue description

See the link to graphs below.
 
All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=617720

Original alerts at time of bug-filing:
  https://chromeperf.appspot.com/group_report?keys=agxzfmNocm9tZXBlcmZyFAsSB0Fub21hbHkYgICgnO7RvQoM


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

chromium-rel-mac-retina
Cc: erikc...@chromium.org ccameron@chromium.org
Components: Internals>Media>Video
Labels: OS-Mac
Owner: erikc...@chromium.org

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

Hi erikchen@chromium.org, the bisect results pointed to your CL below as possibly
causing a regression. Please have a look at this info and see whether
your CL be related.


===== BISECT JOB RESULTS =====
Status: completed


===== SUSPECTED CL(s) =====
Subject : Reenable IOSurfaces for Canvas on Mac.
Author  : erikchen
Commit description:
  
The browser compositor now waits until IOSurfaces are no longer in use by the
Window Server before returning them.

BUG= 608026 

Review-Url: https://codereview.chromium.org/2020183003
Cr-Commit-Position: refs/heads/master@{#397176}
Commit  : a0f4b5051a2ef87f7de7cb469fe87d781cc0ab35
Date    : Wed Jun 01 17:55:59 2016


===== TESTED REVISIONS =====
Revision         Mean     Std Dev   N  Good?
chromium@397171  51.0665  0.690561  5  good
chromium@397175  51.4664  0.896523  5  good
chromium@397176  55.2916  0.676957  5  bad    <--
chromium@397177  55.3564  0.687881  5  bad
chromium@397178  55.2715  0.652201  5  bad
chromium@397185  55.287   0.724157  5  bad
chromium@397198  55.1958  0.537148  5  bad

Bisect job ran on: mac_retina_perf_bisect
Bug ID: 617720

Test Command: src/tools/perf/run_benchmark -v --browser=release --output-format=chartjson --upload-results --also-run-disabled-tests media.tough_video_cases
Test Metric: energy_consumption_mwh/energy_consumption_mwh
Relative Change: 8.09%
Score: 99.9

Buildbot stdio: http://build.chromium.org/p/tryserver.chromium.perf/builders/mac_retina_perf_bisect/builds/1329
Job details: https://chromeperf.appspot.com/buildbucket_job_status/9010577341850338256


Not what you expected? We'll investigate and get back to you!
  https://chromeperf.appspot.com/bad_bisect?try_job_id=5798020285726720

| O O | Visit http://www.chromium.org/developers/speed-infra/perf-bug-faq
|  X  | for more information addressing perf regression bugs. For feedback,
| / \ | file a bug with component Tests>AutoBisect.  Thank you!

===== BISECT JOB RESULTS =====
Status: completed


===== SUSPECTED CL(s) =====
Subject : Reenable IOSurfaces for Canvas on Mac.
Author  : erikchen
Commit description:
  
The browser compositor now waits until IOSurfaces are no longer in use by the
Window Server before returning them.

BUG= 608026 

Review-Url: https://codereview.chromium.org/2020183003
Cr-Commit-Position: refs/heads/master@{#397176}
Commit  : a0f4b5051a2ef87f7de7cb469fe87d781cc0ab35
Date    : Wed Jun 01 17:55:59 2016


===== TESTED REVISIONS =====
Revision         Mean     Std Dev   N  Good?
chromium@397171  48.1667  0.825702  5  good
chromium@397175  48.2771  0.671036  5  good
chromium@397176  51.6003  0.599535  5  bad    <--
chromium@397177  51.6254  0.470826  5  bad
chromium@397178  51.6987  0.555977  5  bad
chromium@397185  51.6242  0.739344  5  bad
chromium@397198  51.6026  0.680137  5  bad

Bisect job ran on: mac_retina_perf_bisect
Bug ID: 617720

Test Command: src/tools/perf/run_benchmark -v --browser=release --output-format=chartjson --upload-results --also-run-disabled-tests media.tough_video_cases
Test Metric: energy_consumption_mwh/energy_consumption_mwh
Relative Change: 7.13%
Score: 99.9

Buildbot stdio: http://build.chromium.org/p/tryserver.chromium.perf/builders/mac_retina_perf_bisect/builds/1330
Job details: https://chromeperf.appspot.com/buildbucket_job_status/9010577294498032080


Not what you expected? We'll investigate and get back to you!
  https://chromeperf.appspot.com/bad_bisect?try_job_id=5858592477937664

| O O | Visit http://www.chromium.org/developers/speed-infra/perf-bug-faq
|  X  | for more information addressing perf regression bugs. For feedback,
| / \ | file a bug with component Tests>AutoBisect.  Thank you!
Some of the pages definitely use canvas:
https://cs.chromium.org/chromium/src/tools/perf/page_sets/tough_video_cases/video.html?q=video.html&sq=package:chromium&l=2&dr

The expectation is that real energy consumption should have gone down, not up. Will need to investigate to determine whether this is a real regression.
There was a bump in idle_wakeups_browser on non-retina mac11 at the same time:
https://chromeperf.appspot.com/group_report?keys=agxzfmNocm9tZXBlcmZyFAsSB0Fub21hbHkYgICg3JrkswoM
Cc: sande...@chromium.org
Status: WontFix (was: Assigned)
Hm. I'm having trouble reproducing this regression locally. 

Looking at the graphs at chromeperf.appspot.com:
Test Suite: media.tough_video_cases
Bot: chromium-rel-mac-hdd,chromium-rel-mac-retina,chromium-rel-mac11,chromium-rel-mac9,chromium-rel-mac10
Subtest: idle_wakeups_total and energy_consumption_mwh
Subtest: video.html?src_crowd1080_vp9.webm_canvas_true

We see a regression in energy_consumption_mwh, but only on the mac retina device. I ran the test on a mac retina device, and the first thing I noticed is that there are two videos playing, a 800x450 canvas element, and a 1920x1080 video element. The latter is mostly scrolled off the page, so it doesn't seem representative of a real case we're trying to optimize for. On my local device, I tried three setups:

No Chromium Image for Canvas: 64.82 mwh
Chromium Image for Canvas, but no mac overlays: 63.87
Chromium Image for Canvas with mac overlays: 48.29

These numbers are reproducible, and have less than 5% noise. So this seems to imply a massive win, rather than a regression. [This is also the expected result, and is the main reason for this work to begin with.]

At some point in the near future, I'm going to be setting up some low noise power tests, which will hopefully prove this point more thoroughly.
See https://bugs.chromium.org/p/chromium/issues/detail?id=616811

I don't intend to do any more research into this regression. 

Sign in to add a comment