Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Issue 1684193004: cc: Avoid extra flush calls to Skia GrContext (Closed)

Created:
4 years, 10 months ago by Kimmo Kinnunen
Modified:
4 years, 10 months ago
Reviewers:
Stephen White, ericrk
CC:
chromium-reviews, cc-bugs_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@compositor-avoid-extra-flushes
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

cc: Avoid extra flush calls to Skia GrContext Avoid calling GrContext::flush() upon every tile raster. The correct way to ensure rendering has been submitted to GPU API level is by "preparing for external io" the render target. This fixes the problem where Skia GPU resource cache resources grow old too quickly. Each flush will age the resources, and after becoming too old (64), the resources will be redundantly destroyed upon the next resource allocation. The flush is intended to be called at the rate the order of frames. Before this fix, the flush was called at least the amount relative to the amount of tiles. For MSAA, flush was called more than one time per tile. This fix reduces the amount of flushes. Also, after this fix the effect of potential extra flushes can be fixed in Skia. BUG=582858 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Patch Set 1 : deps #

Unified diffs Side-by-side diffs Delta from patch set Stats (+2 lines, -4 lines) Patch
M cc/raster/gpu_rasterizer.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/raster/scoped_gpu_raster.cc View 1 chunk +0 lines, -3 lines 0 comments Download
M cc/resources/resource_provider.cc View 1 chunk +1 line, -0 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 6 (4 generated)
Kimmo Kinnunen
alternative 3
4 years, 10 months ago (2016-02-11 17:03:40 UTC) #4
ericrk
4 years, 10 months ago (2016-02-12 00:07:40 UTC) #5
On 2016/02/11 at 17:03:40, kkinnunen wrote:
> alternative 3

Sounds like we should go with Alternative 1 - as the PrepareSurfaceForExternalIO
call sounds like it comes with benefits. I've approved the other two options,
please do whichever you feel is best.

Powered by Google App Engine
This is Rietveld 408576698