summaryrefslogtreecommitdiff
path: root/deps/v8/tools/heap-stats
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/tools/heap-stats')
-rw-r--r--deps/v8/tools/heap-stats/categories.js2
-rw-r--r--deps/v8/tools/heap-stats/global-timeline.js18
-rw-r--r--deps/v8/tools/heap-stats/trace-file-reader.js17
3 files changed, 28 insertions, 9 deletions
diff --git a/deps/v8/tools/heap-stats/categories.js b/deps/v8/tools/heap-stats/categories.js
index e02571b4f8..6560758f3e 100644
--- a/deps/v8/tools/heap-stats/categories.js
+++ b/deps/v8/tools/heap-stats/categories.js
@@ -77,7 +77,7 @@ const CATEGORIES = new Map([
'JS_TO_WASM_FUNCTION',
'JS_TYPED_ARRAY_TYPE',
'JS_WEAK_MAP_TYPE',
- 'MUTABLE_HEAP_NUMBER_TYPE',
+ 'HEAP_NUMBER_TYPE',
'NATIVE_CONTEXT_TYPE',
'OBJECT_PROPERTY_DICTIONARY_TYPE',
'ONE_BYTE_INTERNALIZED_STRING_TYPE',
diff --git a/deps/v8/tools/heap-stats/global-timeline.js b/deps/v8/tools/heap-stats/global-timeline.js
index 3830b7ca33..c34ba2b913 100644
--- a/deps/v8/tools/heap-stats/global-timeline.js
+++ b/deps/v8/tools/heap-stats/global-timeline.js
@@ -63,9 +63,12 @@ class GlobalTimeline extends HTMLElement {
{type: 'number', label: 'Ptr compression benefit'},
{type: 'string', role: 'tooltip'},
{type: 'number', label: 'Embedder fields'},
- {type: 'number', label: 'Tagged fields'},
+ {type: 'number', label: 'Tagged fields (excl. in-object Smis)'},
+ {type: 'number', label: 'In-object Smi-only fields'},
{type: 'number', label: 'Other raw fields'},
- {type: 'number', label: 'Unboxed doubles'}
+ {type: 'number', label: 'Unboxed doubles'},
+ {type: 'number', label: 'Boxed doubles'},
+ {type: 'number', label: 'String data'}
];
const chart_data = [labels];
const isolate_data = this.data[this.selection.isolate];
@@ -78,10 +81,14 @@ class GlobalTimeline extends HTMLElement {
const data = [];
data.push(gc_data.time * kMillis2Seconds);
const total = data_set.tagged_fields +
+ data_set.inobject_smi_fields +
data_set.embedder_fields +
data_set.other_raw_fields +
- data_set.unboxed_double_fields;
- const ptr_compr_benefit = data_set.tagged_fields / 2;
+ data_set.unboxed_double_fields +
+ data_set.boxed_double_fields +
+ data_set.string_data;
+ const ptr_compr_benefit =
+ (data_set.inobject_smi_fields + data_set.tagged_fields) / 2;
const ptr_compr_benefit_perc = ptr_compr_benefit / total * 100;
sum_total += total;
sum_ptr_compr_benefit_perc += ptr_compr_benefit_perc;
@@ -93,8 +100,11 @@ class GlobalTimeline extends HTMLElement {
data.push(tooltip);
data.push(data_set.embedder_fields / KB);
data.push(data_set.tagged_fields / KB);
+ data.push(data_set.inobject_smi_fields / KB);
data.push(data_set.other_raw_fields / KB);
data.push(data_set.unboxed_double_fields / KB);
+ data.push(data_set.boxed_double_fields / KB);
+ data.push(data_set.string_data / KB);
chart_data.push(data);
});
const avg_ptr_compr_benefit_perc =
diff --git a/deps/v8/tools/heap-stats/trace-file-reader.js b/deps/v8/tools/heap-stats/trace-file-reader.js
index 4fec9a1cb9..86d9d7d551 100644
--- a/deps/v8/tools/heap-stats/trace-file-reader.js
+++ b/deps/v8/tools/heap-stats/trace-file-reader.js
@@ -137,11 +137,15 @@ class TraceFileReader extends HTMLElement {
}
addFieldTypeData(data, isolate, gc_id, data_set, tagged_fields,
- embedder_fields, unboxed_double_fields, other_raw_fields) {
+ inobject_smi_fields, embedder_fields, unboxed_double_fields,
+ boxed_double_fields, string_data, other_raw_fields) {
data[isolate].gcs[gc_id][data_set].field_data = {
tagged_fields,
+ inobject_smi_fields,
embedder_fields,
unboxed_double_fields,
+ boxed_double_fields,
+ string_data,
other_raw_fields
};
}
@@ -217,8 +221,12 @@ class TraceFileReader extends HTMLElement {
const field_data = entry.field_data;
this.addFieldTypeData(data, isolate, gc_id, data_set,
- field_data.tagged_fields, field_data.embedder_fields,
+ field_data.tagged_fields,
+ field_data.inobject_smi_fields,
+ field_data.embedder_fields,
field_data.unboxed_double_fields,
+ field_data.boxed_double_fields,
+ field_data.string_data,
field_data.other_raw_fields);
data[isolate].gcs[gc_id][data_set].bucket_sizes =
@@ -282,8 +290,9 @@ class TraceFileReader extends HTMLElement {
this.createOrUpdateEntryIfNeeded(data, entry);
this.createDatasetIfNeeded(data, entry, entry.key);
this.addFieldTypeData(data, entry.isolate, entry.id, entry.key,
- entry.tagged_fields, entry.embedder_fields,
- entry.unboxed_double_fields, entry.other_raw_fields);
+ entry.tagged_fields, entry.embedder_fields, entry.inobject_smi_fields,
+ entry.unboxed_double_fields, entry.boxed_double_fields,
+ entry.string_data, entry.other_raw_fields);
} else if (entry.type === 'instance_type_data') {
if (entry.id in data[entry.isolate].gcs) {
this.createOrUpdateEntryIfNeeded(data, entry);