V8PrivateProperty isn't fast enough |
||
Issue descriptionAfter the fix for Issue 611864 , testing shows that V8PrivateProperty still carries too high a cost -- specifically, V8PrivateProperty::Symbol::get(). Please see https://codereview.chromium.org/2023603003 , which eliminates the "persistent caches" in several WebGL objects in favor of calling V8PrivateProperty::Symbol::get. It increases the mean_frame_time of the WebGL portion of the Animometer / Motion Mark benchmark from 56.217 ms to 83.02 ms. This is too high a cost. More profiling and optimization of V8PrivateProperty is needed.
,
Jun 2 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c6cada593b5b731a615f6d66f96586f37e86e2d4 commit c6cada593b5b731a615f6d66f96586f37e86e2d4 Author: yukishiino <yukishiino@chromium.org> Date: Thu Jun 02 14:55:35 2016 binding: Supports V8PrivateProperty::getOrUndefined. Adds getOrUndefined() as a fast version of get() for the clients that do not need to care about the difference between a) the private property has not yet been set, and b) the private property was intentionally set to undefined. BUG= 616618 Review-Url: https://codereview.chromium.org/2035713002 Cr-Commit-Position: refs/heads/master@{#397401} [modify] https://crrev.com/c6cada593b5b731a615f6d66f96586f37e86e2d4/third_party/WebKit/Source/bindings/core/v8/V8PrivateProperty.h
,
Jun 3 2016
Close this issue, since I have no more idea to improve V8PrivateProperty. |
||
►
Sign in to add a comment |
||
Comment 1 by kbr@chromium.org
, Jun 1 2016Components: Blink>WebGL