Reviewers: Hannes Payer,

Description:
Add histograms for idle notification and incremental marking steps

BUG=381820
LOG=n
[email protected]

Please review this at https://codereview.chromium.org/401793002/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files (+20, -12 lines):
  M src/counters.h
  M src/heap.cc


Index: src/counters.h
diff --git a/src/counters.h b/src/counters.h
index 93079b1ef9bdc2b287421519ea7d25e2b899ff0b..4a35bf493f2c24809d742e31fcdc2c8db406f360 100644
--- a/src/counters.h
+++ b/src/counters.h
@@ -292,18 +292,20 @@ class HistogramTimerScope BASE_EMBEDDED {
 };


-#define HISTOGRAM_TIMER_LIST(HT)                                      \
-  /* Garbage collection timers. */                                    \
-  HT(gc_compactor, V8.GCCompactor)                                    \
-  HT(gc_scavenger, V8.GCScavenger)                                    \
-  HT(gc_context, V8.GCContext) /* GC context cleanup time */          \
-  /* Parsing timers. */                                               \
-  HT(parse, V8.Parse)                                                 \
-  HT(parse_lazy, V8.ParseLazy)                                        \
-  HT(pre_parse, V8.PreParse)                                          \
-  /* Total compilation times. */                                      \
-  HT(compile, V8.Compile)                                             \
-  HT(compile_eval, V8.CompileEval)                                    \
+#define HISTOGRAM_TIMER_LIST(HT)                             \
+  /* Garbage collection timers. */                           \
+  HT(gc_compactor, V8.GCCompactor)                           \
+  HT(gc_scavenger, V8.GCScavenger)                           \
+  HT(gc_context, V8.GCContext) /* GC context cleanup time */ \
+  HT(gc_idle_notification, V8.GCIdleNotification)            \
+  HT(gc_incremental_marking, V8.GCIncrementalMarking)        \
+  /* Parsing timers. */                                      \
+  HT(parse, V8.Parse)                                        \
+  HT(parse_lazy, V8.ParseLazy)                               \
+  HT(pre_parse, V8.PreParse)                                 \
+  /* Total compilation times. */                             \
+  HT(compile, V8.Compile)                                    \
+  HT(compile_eval, V8.CompileEval)                           \
   HT(compile_lazy, V8.CompileLazy)

 #define HISTOGRAM_PERCENTAGE_LIST(HP)                                 \
Index: src/heap.cc
diff --git a/src/heap.cc b/src/heap.cc
index 16d7a8040bd4bdc1307363521e0d3f1128cc04ad..fa67dc148e49c97ab7825e9ebea84ee44f3793d1 100644
--- a/src/heap.cc
+++ b/src/heap.cc
@@ -4227,6 +4227,9 @@ void Heap::MakeHeapIterable() {


 void Heap::AdvanceIdleIncrementalMarking(intptr_t step_size) {
+  HistogramTimerScope idle_notification_scope(
+      isolate_->counters()->gc_incremental_marking());
+
   incremental_marking()->Step(step_size,
                               IncrementalMarking::NO_GC_VIA_STACK_GUARD);

@@ -4263,6 +4266,9 @@ bool Heap::IdleNotification(int hint) {
   intptr_t step_size =
       size_factor * IncrementalMarking::kAllocatedThreshold;

+  HistogramTimerScope idle_notification_scope(
+      isolate_->counters()->gc_idle_notification());
+
   if (contexts_disposed_ > 0) {
     contexts_disposed_ = 0;
     int mark_sweep_time = Min(TimeMarkSweepWouldTakeInMs(), 1000);


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to