New issue
Advanced search Search tips

Issue 914833 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 21
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug-Regression



Sign in to add a comment

12.4%-∞% regression in avg_surface_fps,frame_times,percentage_smooth,thread_raster_cpu_time_per_frame,thread_total_all_cpu_time_per_frame at 615611:615728

Project Member Reported by 42576172...@developer.gserviceaccount.com, Dec 13

Issue description

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

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


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

Android Nexus6 WebView Perf

rendering.mobile - Benchmark documentation link:
  https://bit.ly/rendering-benchmarks
📍 Couldn't reproduce a difference.
https://pinpoint-dot-chromeperf.appspot.com/job/12aab3fa140000
Cc: michaelludwig@google.com
Owner: michaelludwig@google.com
Status: Assigned (was: Untriaged)
📍 Found a significant difference after 1 commit.
https://pinpoint-dot-chromeperf.appspot.com/job/14de8b01140000

Consolidate stroke-rect ops and use GrFillRectOp instead of GrNonAA/AARectOp by michaelludwig@google.com
https://skia.googlesource.com/skia/+/72ab3461b7473c0375c68ae280530a5a8d27026d
frame_times: 16.91 → 18.31 (+1.4)

Understanding performance regressions:
  http://g.co/ChromePerformanceRegressions

Benchmark documentation link:
  https://bit.ly/rendering-benchmarks
I have a CL under review that may help with this, as it reduces the performance hit of the new rectangle drawing code on the Nexus 6 significantly (albeit not back to the original specialized code path): https://skia-review.googlesource.com/c/skia/+/179060
The first CL did not provide sufficient improvements (50% reduction in the regression magnitude, but not eliminated). A new CL that switches from fragment to vertex coverage restores performance almost completely: https://skia-review.googlesource.com/c/skia/+/179255

Blockedon: 917379
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 21

The following revision refers to this bug:
  https://skia.googlesource.com/skia/+/93aeba0406a53c1a5a904db80206be93b2790acf

commit 93aeba0406a53c1a5a904db80206be93b2790acf
Author: Michael Ludwig <michaelludwig@google.com>
Date: Fri Dec 21 18:48:33 2018

Implement per-edge aa as extra vertices instead of interpolated edge distances

It appears that using vertex interpolation to handle coverage, instead of
evaluating per-pixel, helps significantly on Adreno GPUs. Will see after
perf comes in if it's worth having both strategies and switch depending
on the platform.

Bug:  chromium:914833 
Bug: b/120946388
Change-Id: Ie33417938a72aa14eba4e22711e0abf97fcfbc7d
Reviewed-on: https://skia-review.googlesource.com/c/179255
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>

[modify] https://crrev.com/93aeba0406a53c1a5a904db80206be93b2790acf/src/gpu/ops/GrTextureOp.cpp
[modify] https://crrev.com/93aeba0406a53c1a5a904db80206be93b2790acf/src/gpu/ops/GrQuadPerEdgeAA.h
[modify] https://crrev.com/93aeba0406a53c1a5a904db80206be93b2790acf/src/gpu/ops/GrFillRectOp.cpp
[modify] https://crrev.com/93aeba0406a53c1a5a904db80206be93b2790acf/src/gpu/ops/GrQuadPerEdgeAA.cpp

Blockedon: -917379
Status: Fixed (was: Assigned)
This should roll in chromium once infra settles back down. Let me know if it performance is not restored.
Project Member

Comment 11 by bugdroid1@chromium.org, Dec 21

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

commit f275a2593c18946e040c3fc5eb7378cfad336e36
Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Date: Fri Dec 21 22:59:02 2018

Roll src/third_party/skia 02cb969e13c7..f4dd96c6b81b (19 commits)

https://skia.googlesource.com/skia.git/+log/02cb969e13c7..f4dd96c6b81b


git log 02cb969e13c7..f4dd96c6b81b --date=short --no-merges --format='%ad %ae %s'
2018-12-21 reed@google.com Reland "Revert "serialize fonts instead of paints""
2018-12-21 ethannicholas@google.com fixed SPIR-V global initializer ordering
2018-12-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/externals/angle2 92b16ea26290..d50521fd068e (1 commits)
2018-12-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/externals/swiftshader bb0a7f09a91e..809d01138e0a (1 commits)
2018-12-21 halcanary@google.com SkPDF: unify SkPDFOffsetMap and SkPDFObjectSerializer
2018-12-21 recipe-roller@chromium.org Roll recipe dependencies (trivial).
2018-12-21 skia-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/externals/swiftshader e0b5a4b0416b..bb0a7f09a91e (2 commits)
2018-12-21 caryclark@skia.org fix pathops  bug 8380 
2018-12-21 reed@google.com Revert "share constructors/enum in both variants of SkReadBuffer"
2018-12-21 michaelludwig@google.com Implement per-edge aa as extra vertices instead of interpolated edge distances
2018-12-21 herb@google.com Move from a generalized appendGlyph to two specialized methods.
2018-12-21 reed@google.com use font for measuring/paths
2018-12-21 reed@google.com share constructors/enum in both variants of SkReadBuffer
2018-12-21 reed@google.com Revert "Revert "serialize fonts instead of paints""
2018-12-21 reed@google.com Revert "serialize fonts instead of paints"
2018-12-21 bsalomon@google.com Move GrResourceKey.h to include/private.
2018-12-21 robertphillips@google.com Short term fix for SkClipStack unique key issue
2018-12-21 reed@google.com serialize fonts instead of paints
2018-12-21 halcanary@google.com SkPDF: debugging flag SK_PDF_BASE85_BINARY applies to JPEG


Created with:
  gclient setdep -r src/third_party/skia@f4dd96c6b81b

The AutoRoll server is located here: https://autoroll.skia.org/r/skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux-blink-rel;luci.chromium.try:linux-chromeos-compile-dbg;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel

BUG= chromium:914833 ,chromium:b/120946388
TBR=halcanary@chromium.org

Change-Id: Ide4efdfb6f874d1794316745926fc26559852da6
Reviewed-on: https://chromium-review.googlesource.com/c/1388995
Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#618651}
[modify] https://crrev.com/f275a2593c18946e040c3fc5eb7378cfad336e36/DEPS

Sign in to add a comment