New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 631094 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Bug



Sign in to add a comment

Rework object stats reporting

Project Member Reported by mlippautz@chromium.org, Jul 25 2016

Issue description

Tracking bug for reworking object stats reporting.
 
author	mlippautz <mlippautz@chromium.org>	Wed Jul 13 14:53:55 2016

[heap] Rework and improve object stats tracing

- Instead of tracing during marking we can now trace in a separate phase in MC.
  (Heap is iterable.)
- Add more subtypes for fixed arrays, reducing the unknown bucket to around ~8%
  (local run).
- Refactor collection calls to have a single bottleneck.
- Provide JSON-based output format that can be "easily" processed in JS.

BUG=
R=ulan@chromium.org,hpayer@chromium.org

Review-Url: https://codereview.chromium.org/2129173002
Cr-Commit-Position: refs/heads/master@{#37718}
author	mlippautz <mlippautz@chromium.org>	Wed Jul 13 16:47:50 2016

[heap] ObjectStats: Use ieee754 log2

TBR=ulan@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2147983002
Cr-Commit-Position: refs/heads/master@{#37723}
author	mlippautz <mlippautz@chromium.org>	Thu Jul 14 14:41:03 2016

[heap] ObjectStats: Fix accounting for fixed array subtypes

- Fix recording sub types that have their own instance type
- Fix double accounting by keeping a shadow map for tracking recorded status
- Add recording of more fixed array sub types

BUG=hpayer@chromium.org

Review-Url: https://codereview.chromium.org/2147693004
Cr-Commit-Position: refs/heads/master@{#37768}
Project Member

Comment 6 by bugdroid1@chromium.org, Jul 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/77d6ef3877dfcae9004aeae3b9d7263672fe9ca0

commit 77d6ef3877dfcae9004aeae3b9d7263672fe9ca0
Author: mlippautz <mlippautz@chromium.org>
Date: Tue Jul 26 17:26:17 2016

[heap] ObjectStats: Fix off-by-one in histogram

BUG= chromium:631094 
R=hpayer@chromium.org

Review-Url: https://codereview.chromium.org/2181373002
Cr-Commit-Position: refs/heads/master@{#38067}

[modify] https://crrev.com/77d6ef3877dfcae9004aeae3b9d7263672fe9ca0/src/heap/object-stats.h

Project Member

Comment 7 by bugdroid1@chromium.org, Jul 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/038bafcabf19c46d2d0f8560bd046ae297ef5004

commit 038bafcabf19c46d2d0f8560bd046ae297ef5004
Author: mlippautz <mlippautz@chromium.org>
Date: Tue Jul 26 20:32:38 2016

[heap] ObjectStats: Account for headers when computing HashTable overhead

BUG= chromium:631094 
R=hpayer@chromium.org

Review-Url: https://codereview.chromium.org/2176393003
Cr-Commit-Position: refs/heads/master@{#38072}

[modify] https://crrev.com/038bafcabf19c46d2d0f8560bd046ae297ef5004/src/heap/object-stats.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Jul 26 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/038bafcabf19c46d2d0f8560bd046ae297ef5004

commit 038bafcabf19c46d2d0f8560bd046ae297ef5004
Author: mlippautz <mlippautz@chromium.org>
Date: Tue Jul 26 20:32:38 2016

[heap] ObjectStats: Account for headers when computing HashTable overhead

BUG= chromium:631094 
R=hpayer@chromium.org

Review-Url: https://codereview.chromium.org/2176393003
Cr-Commit-Position: refs/heads/master@{#38072}

[modify] https://crrev.com/038bafcabf19c46d2d0f8560bd046ae297ef5004/src/heap/object-stats.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Jul 27 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/53dde335b9f11b409b24cfdcdc24164388747735

commit 53dde335b9f11b409b24cfdcdc24164388747735
Author: mlippautz <mlippautz@chromium.org>
Date: Wed Jul 27 13:23:17 2016

[heap] ObjectStats: Fixes for recording HashTable overhead

- Overhead for HashTable was not accounted in bytes
- Name table in typefeedback metadata changed

BUG= chromium:631094 
R=hpayer@chromium.org

Review-Url: https://codereview.chromium.org/2190563002
Cr-Commit-Position: refs/heads/master@{#38098}

[modify] https://crrev.com/53dde335b9f11b409b24cfdcdc24164388747735/src/heap/object-stats.cc

Project Member

Comment 11 by bugdroid1@chromium.org, Aug 16 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/5d9deb255c1799221afde5eb41307b4a87916de7

commit 5d9deb255c1799221afde5eb41307b4a87916de7
Author: mlippautz <mlippautz@chromium.org>
Date: Tue Aug 16 19:26:18 2016

[heap] ObjectStats: Various new categories

- Add object template categories.
- Add optimized code literals.
- Add compilation cache hash tables.
- Report overhead for code cache when used as hashtable.

BUG= chromium:631094 

Review-Url: https://codereview.chromium.org/2246473002
Cr-Commit-Position: refs/heads/master@{#38667}

[modify] https://crrev.com/5d9deb255c1799221afde5eb41307b4a87916de7/src/flag-definitions.h
[modify] https://crrev.com/5d9deb255c1799221afde5eb41307b4a87916de7/src/heap/object-stats.cc
[modify] https://crrev.com/5d9deb255c1799221afde5eb41307b4a87916de7/src/heap/object-stats.h
[modify] https://crrev.com/5d9deb255c1799221afde5eb41307b4a87916de7/src/objects-inl.h
[modify] https://crrev.com/5d9deb255c1799221afde5eb41307b4a87916de7/src/objects.h

Status: Fixed (was: Started)
Done for now.

* Tracing using --trace-gc-object-stats
* Visualizer present at https://mlippautz.github.io/v8-heap-stats/

Sign in to add a comment