Chromium Code Reviews
Help | Chromium Project | Gerrit Changes | Sign in
(55)

Issue 1169633002: Optimize Element::attributeChanged() (Closed)

Created:
4 years, 11 months ago by Mikhail
Modified:
4 years, 10 months ago
Reviewers:
sof, Mike West
CC:
blink-reviews, blink-reviews-dom_chromium.org, dglazkov+blink, eae+blinkwatch, rwlbuis, sof
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Optimize Element::attributeChanged() This patch makes style attribute and presentation attribute checks conditional, meaning that these checks are not done for the attributes that we already know have other types. The reason is that 'isPresentationAttribute()' call is heavy and it is detected as a CPU hotspot by the Intel VTune Amplifier profiler. After this patch is applied the result median time values improve approximately by 2% for the 'modify-element-classname.html' test and by 11% for the 'modify-element-id.html' test (Linux desktop x64). Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=196669

Patch Set 1 #

Total comments: 2

Patch Set 2 : Removed unneeded local var #

Unified diffs Side-by-side diffs Delta from patch set Stats (+8 lines, -11 lines) Patch
M Source/core/dom/Element.cpp View 1 1 chunk +8 lines, -11 lines 0 comments Download

Messages

Total messages: 12 (5 generated)
Mikhail
PTAL
4 years, 11 months ago (2015-06-05 12:34:36 UTC) #2
Mike West
LGTM! https://codereview.chromium.org/1169633002/diff/1/Source/core/dom/Element.cpp File Source/core/dom/Element.cpp (right): https://codereview.chromium.org/1169633002/diff/1/Source/core/dom/Element.cpp#newcode1118 Source/core/dom/Element.cpp:1118: bool testShouldInvalidateStyle = inActiveDocument() && styleResolver && styleChangeType() ...
4 years, 10 months ago (2015-06-07 13:59:44 UTC) #3
sof
lgtm. isPresentationAttribute() also shows up in profiles for blink_perf.bindings tests, iirc. https://codereview.chromium.org/1169633002/diff/1/Source/core/dom/Element.cpp File Source/core/dom/Element.cpp (right): ...
4 years, 10 months ago (2015-06-07 19:01:15 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1169633002/20001
4 years, 10 months ago (2015-06-08 07:17:36 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: win_blink_rel on tryserver.blink (JOB_FAILED, http://build.chromium.org/p/tryserver.blink/builders/win_blink_rel/builds/65616)
4 years, 10 months ago (2015-06-08 09:18:50 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1169633002/20001
4 years, 10 months ago (2015-06-08 11:19:25 UTC) #11
commit-bot: I haz the power
4 years, 10 months ago (2015-06-08 12:25:53 UTC) #12
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=196669

Powered by Google App Engine
This is Rietveld 408576698