v8/tools/heap-stats
Igor Sheludko f2d0550a84 [tools] Fix parsing of Chrome tracing files by v8-heap-stats
Use Oboe.js streaming JSON parser for reading tracing file which
provides the following advantages:
1) streaming parsing allows keeping alive only relevant entries which
   should consume less memory when parsing of huge files (although
   currently the whole file is kept in memory anyway),
2) avoids the need to sanitize tracing file

Bug: v8:10155
Change-Id: Id5268264a610eff804672d09b3e9f3ac353b67de
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2120542
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#66888}
2020-03-27 10:53:37 +00:00
..
categories.js [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
details-selection-template.html [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
details-selection.js [tools] Make paths in v8-heap-stats relative 2020-03-23 23:00:06 +00:00
global-timeline-template.html [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
global-timeline.js [tools] Make paths in v8-heap-stats relative 2020-03-23 23:00:06 +00:00
helper.js [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
histogram-viewer-template.html [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
histogram-viewer.js [tools] Make paths in v8-heap-stats relative 2020-03-23 23:00:06 +00:00
index.html [tools] Fix parsing of Chrome tracing files by v8-heap-stats 2020-03-27 10:53:37 +00:00
model.js [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
README.md [object-stats] Unpack gzipped trace files on the fly 2018-01-23 15:01:02 +00:00
trace-file-reader-template.html [tools] Fix v8-heap-stats 2020-03-23 13:53:05 +00:00
trace-file-reader.js [tools] Fix parsing of Chrome tracing files by v8-heap-stats 2020-03-27 10:53:37 +00:00

Heap Stats

Heap stats is a HTML-based tool for visualizing V8-internal object statistics. For example, the tool can be used to visualize how much heap memory is used for maintaining internal state versus actually allocated by the user.

The tool consumes log files produced by d8 (or Chromium) by passing --trace-gc-object-stats or a trace captured using Chrome's tracing infrastructure. Chrome trace files can either be processed as gzip or raw text files.

Hosting requires a web server, e.g.:

cd tools/heap-stats
python -m SimpleHTTPServer 8000