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

Issue 1491653002: Switch canvas.toBlob from idle-periods implementation to threaded implementation to allow experimen… (Closed)

Created:
5 years ago by xlai (Olivia)
Modified:
5 years ago
Reviewers:
Justin Novosad
CC:
chromium-reviews, dshwang, ajuma+watch-canvas_chromium.org, blink-reviews-html_chromium.org, dglazkov+blink, Rik, blink-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Switch canvas.toBlob from idle-periods implementation to threaded implementation to allow experimenting. Based on repeated experiments of both idle-periods implementation and threaded implementation for png image encoding on a variety of perf trybots, we find that the idle-periods implementation does not have observable improvement on reducing the negative impact of canvas.toBlob on the smoothness of animation, even on low-end devices; meanwhile, the threaded implementation runs canvas.toBlob significantly faster and does not have the risk of indefinitely delaying the image encoding task like the idle-periods implementation. Therefore, we decide to switch canvas.toBlob to its threaded implementation. This CL will allow people (recipients of intent-to-ship letter) to try out canvas.toBlob in its threaded implementation by simply turning on --enable-experimental-canvas-features flag. Not only that, we also allow some grace periods to check if the related performance tests on dashboard have any regression. After approvals from API owners, we will follow with another CL that completely deletes the idle-periods implementation and merges the CanvasAsyncBlobCreator back to HTMLCanvasElement to reduce redundant codes. BUG=523414 Committed: https://crrev.com/9cbf936a9bc9102b2c9f9a7f6311b53747c2bd52 Cr-Commit-Position: refs/heads/master@{#362787}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Do according to feedback #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -5 lines) Patch
M third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp View 1 1 chunk +3 lines, -5 lines 0 comments Download

Messages

Total messages: 16 (7 generated)
xlai (Olivia)
junov@: After Intent-to-ship letter is sent, probably there will be ppl who want to try ...
5 years ago (2015-12-01 18:47:42 UTC) #2
Justin Novosad
Please respect the 72col limit on CL descriptions. https://codereview.chromium.org/1491653002/diff/1/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp File third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp (right): https://codereview.chromium.org/1491653002/diff/1/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp#newcode565 third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp:565: // ...
5 years ago (2015-12-01 19:38:03 UTC) #3
xlai (Olivia)
5 years ago (2015-12-01 20:22:52 UTC) #5
Justin Novosad
On 2015/12/01 20:22:52, Olivia wrote: lgtm
5 years ago (2015-12-02 16:06:04 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1491653002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1491653002/20001
5 years ago (2015-12-02 16:07:29 UTC) #8
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/104039)
5 years ago (2015-12-02 18:25:52 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1491653002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1491653002/20001
5 years ago (2015-12-02 19:40:36 UTC) #12
commit-bot: I haz the power
Committed patchset #2 (id:20001)
5 years ago (2015-12-02 20:56:27 UTC) #14
commit-bot: I haz the power
5 years ago (2015-12-02 20:57:28 UTC) #16
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/9cbf936a9bc9102b2c9f9a7f6311b53747c2bd52
Cr-Commit-Position: refs/heads/master@{#362787}

Powered by Google App Engine
This is Rietveld 408576698