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.