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

Issue 635883003: Limit the number of transitions allowed per hidden class. (Closed)

Created:
6 years, 2 months ago by mckev
Modified:
6 years, 2 months ago
Reviewers:
Toon Verwaest
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/external/v8.git@bleeding_edge
Project:
v8
Visibility:
Public.

Description

Limit the number of transitions allowed per hidden class. Each time a transition is added to a hidden class, the whole transitions array must be copied, which causes poor performance in some circumstances. This change limits the maximum size of the transition array, avoiding this behavior in the pathological case. For example, this improves the performance of the EtchMark benchmark by nearly 60%. BUG=v8:3616 LOG= R=verwaest@chromium.org, svenpanne@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=24857

Patch Set 1 #

Patch Set 2 : Added growth; changed limit #

Total comments: 6

Patch Set 3 : Address Toon comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+112 lines, -46 lines) Patch
M src/heap/mark-compact.cc View 1 1 chunk +4 lines, -3 lines 0 comments Download
M src/objects.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M src/objects.cc View 1 2 2 chunks +7 lines, -3 lines 0 comments Download
M src/objects-inl.h View 1 2 2 chunks +10 lines, -3 lines 0 comments Download
M src/transitions.h View 1 6 chunks +35 lines, -13 lines 0 comments Download
M src/transitions.cc View 1 2 4 chunks +43 lines, -24 lines 0 comments Download
M src/transitions-inl.h View 1 1 chunk +9 lines, -0 lines 0 comments Download
M test/cctest/test-heap.cc View 1 2 chunks +2 lines, -0 lines 0 comments Download

Messages

Total messages: 11 (2 generated)
mckev
Hi Sven! Please take a look at the proposed fix for v8:3616. If other reviewers ...
6 years, 2 months ago (2014-10-07 20:16:08 UTC) #1
Sven Panne
Reassigning to Toon...
6 years, 2 months ago (2014-10-08 06:47:24 UTC) #3
Toon Verwaest
What about growing the transition array by X% each time, and using insertion sort, just ...
6 years, 2 months ago (2014-10-14 08:58:44 UTC) #5
mckev
On 2014/10/14 08:58:44, Toon Verwaest wrote: > What about growing the transition array by X% ...
6 years, 2 months ago (2014-10-20 16:00:17 UTC) #6
mckev
Hey Toon, Based on your feedback, I gave it a shot and added exponential growth ...
6 years, 2 months ago (2014-10-22 22:49:29 UTC) #7
Toon Verwaest
Reinstating the 1.5k limit sounds fine. The results of growth+new limit seem close enough to ...
6 years, 2 months ago (2014-10-23 09:44:34 UTC) #8
mckev
Hi Toon, Thanks for the review! PTAL, I've added a new patchset to address your ...
6 years, 2 months ago (2014-10-24 02:18:52 UTC) #9
Toon Verwaest
Thanks, that LGTM. I'll land the patch for you.
6 years, 2 months ago (2014-10-24 05:20:57 UTC) #10
Toon Verwaest
6 years, 2 months ago (2014-10-24 05:30:09 UTC) #11
Message was sent while issue was closed.
Committed patchset #3 (id:40001) manually as 24857 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698