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

Unified Diff: src/gc-tracer.h

Issue 420213002: Track size of incremental marking steps in GCTracer. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Fixes and clean-ups. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/gc-tracer.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gc-tracer.h
diff --git a/src/gc-tracer.h b/src/gc-tracer.h
index b1e5c5d0c6c243ecd3d2b26f4a00543ec0bb4bea..0f4f135256ecc6ebd0ca0ea68ba1b68bf299108a 100644
--- a/src/gc-tracer.h
+++ b/src/gc-tracer.h
@@ -172,10 +172,28 @@ class GCTracer BASE_EMBEDDED {
// Number of incremental marking steps since creation of tracer.
// (value at start of event)
+ int cumulative_incremental_marking_steps;
+
+ // Incremental marking steps since
+ // - last event for SCAVENGER events
+ // - last MARK_COMPACTOR event for MARK_COMPACTOR events
int incremental_marking_steps;
+ // Bytes marked since creation of tracer (value at start of event).
+ intptr_t cumulative_incremental_marking_bytes;
+
+ // Bytes marked since
+ // - last event for SCAVENGER events
+ // - last MARK_COMPACTOR event for MARK_COMPACTOR events
+ intptr_t incremental_marking_bytes;
+
// Cumulative duration of incremental marking steps since creation of
// tracer. (value at start of event)
+ double cumulative_incremental_marking_duration;
+
+ // Duration of incremental marking steps since
+ // - last event for SCAVENGER events
+ // - last MARK_COMPACTOR event for MARK_COMPACTOR events
double incremental_marking_duration;
// Longest incremental marking step since start of marking.
@@ -200,7 +218,7 @@ class GCTracer BASE_EMBEDDED {
void Stop();
// Log an incremental marking step.
- void AddIncrementalMarkingStep(double duration);
+ void AddIncrementalMarkingStep(double duration, intptr_t bytes);
// Compute the mean duration of the last scavenger events. Returns 0 if no
// events have been recorded.
@@ -232,6 +250,10 @@ class GCTracer BASE_EMBEDDED {
// Returns 0 if no incremental marking round has been completed.
double MaxIncrementalMarkingDuration() const;
+ // Compute the average incremental marking speed in bytes/second. Returns 0 if
+ // no events have been recorded.
+ intptr_t MarkingSpeedInBytesPerMillisecond() const;
+
private:
// Print one detailed trace line in name=value format.
// TODO(ernstm): Move to Heap.
@@ -267,10 +289,14 @@ class GCTracer BASE_EMBEDDED {
EventBuffer mark_compactor_events_;
// Cumulative number of incremental marking steps since creation of tracer.
- int incremental_marking_steps_;
+ int cumulative_incremental_marking_steps_;
+
+ // Cumulative size of incremental marking steps (in bytes) since creation of
+ // tracer.
+ intptr_t cumulative_incremental_marking_bytes_;
// Cumulative duration of incremental marking steps since creation of tracer.
- double incremental_marking_duration_;
+ double cumulative_incremental_marking_duration_;
// Longest incremental marking step since start of marking.
double longest_incremental_marking_step_;
« no previous file with comments | « no previous file | src/gc-tracer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698