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

Issue 5154007: New heap profiler: implement fast retaining sizes approximation. (Closed)

Created:
10 years, 1 month ago by mnaganov (inactive)
Modified:
9 years, 7 months ago
CC:
v8-dev
Visibility:
Public.

Description

New heap profiler: implement fast retaining sizes approximation. Approximation is done by building a dominators tree for the heap graph. Dominator nodes and retained sizes are serialized into JSON. Removed: - reachable size (it is useless, after all); - HeapEntryCalculatedData (size is now stored in the node, retaining paths in a hash map); Committed: http://code.google.com/p/v8/source/detail?r=5867

Patch Set 1 #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+361 lines, -177 lines) Patch
M include/v8-profiler.h View 2 chunks +13 lines, -4 lines 2 comments Download
M src/api.cc View 2 chunks +8 lines, -8 lines 0 comments Download
M src/profile-generator.h View 7 chunks +45 lines, -40 lines 0 comments Download
M src/profile-generator.cc View 19 chunks +207 lines, -103 lines 0 comments Download
M src/profile-generator-inl.h View 2 chunks +16 lines, -16 lines 1 comment Download
M src/utils.h View 1 chunk +2 lines, -0 lines 0 comments Download
M test/cctest/test-heap-profiler.cc View 2 chunks +70 lines, -6 lines 0 comments Download

Messages

Total messages: 4 (0 generated)
mnaganov (inactive)
10 years, 1 month ago (2010-11-19 16:54:10 UTC) #1
mnaganov (inactive)
http://codereview.chromium.org/5154007/diff/1/src/profile-generator-inl.h File src/profile-generator-inl.h (right): http://codereview.chromium.org/5154007/diff/1/src/profile-generator-inl.h#newcode126 src/profile-generator-inl.h:126: void HeapEntriesMap::UpdateEntries(Visitor* visitor) { Just moved this code down ...
10 years, 1 month ago (2010-11-19 16:56:27 UTC) #2
Søren Thygesen Gjesse
LGTM How expensive is the dominator and approx. size calculation when taking the snapshot? http://codereview.chromium.org/5154007/diff/1/include/v8-profiler.h ...
10 years, 1 month ago (2010-11-22 09:49:48 UTC) #3
mnaganov (inactive)
10 years, 1 month ago (2010-11-22 16:43:56 UTC) #4
Algorithmic complexity for dominators calculation is O(N + E * D) for each
iteration, (N is number of nodes, E is number of edges, D is size of largest
dominators set). The number of iterations is about 6 for Gmail.

Size calculation is indeed not so effective. It takes about 200 iterations for
Gmail. I will fix that. Thanks for turning my attention to this issue.

http://codereview.chromium.org/5154007/diff/1/include/v8-profiler.h
File include/v8-profiler.h (right):

http://codereview.chromium.org/5154007/diff/1/include/v8-profiler.h#newcode318
include/v8-profiler.h:318: * Returns a dominator node. This is the node that
participates in every
On 2010/11/22 09:49:48, Søren Gjesse wrote:
> is the -> is a?

Done.

Powered by Google App Engine
This is Rietveld 408576698