Index: src/incremental-marking.h |
=================================================================== |
--- src/incremental-marking.h (revision 12583) |
+++ src/incremental-marking.h (working copy) |
@@ -95,21 +95,22 @@ |
// progress in the face of the mutator creating new work for it. We start |
// of at a moderate rate of work and gradually increase the speed of the |
// incremental marker until it completes. |
- // Do some marking every time this much memory has been allocated. |
- static const intptr_t kAllocatedThreshold = 65536; |
+ // Do some marking every time this much memory has been allocated or this many |
+ // heavy (color-checking) write barriers have been invoked. |
+ static const intptr_t kIncrementalMarkingThreshold = 65536; |
// Start off by marking this many times more memory than has been allocated. |
- static const intptr_t kInitialAllocationMarkingFactor = 1; |
+ static const intptr_t kInitialMarkingSpeed = 1; |
// But if we are promoting a lot of data we need to mark faster to keep up |
// with the data that is entering the old space through promotion. |
static const intptr_t kFastMarking = 3; |
// After this many steps we increase the marking/allocating factor. |
- static const intptr_t kAllocationMarkingFactorSpeedupInterval = 1024; |
+ static const intptr_t kMarkingSpeedAccellerationInterval = 1024; |
// This is how much we increase the marking/allocating factor by. |
- static const intptr_t kAllocationMarkingFactorSpeedup = 2; |
- static const intptr_t kMaxAllocationMarkingFactor = 1000; |
+ static const intptr_t kMarkingSpeedAccelleration = 2; |
+ static const intptr_t kMaxMarkingSpeed = 1000; |
void OldSpaceStep(intptr_t allocated) { |
- Step(allocated * kFastMarking / kInitialAllocationMarkingFactor, |
+ Step(allocated * kFastMarking / kInitialMarkingSpeed, |
GC_VIA_STACK_GUARD); |
} |
@@ -211,13 +212,13 @@ |
void NotifyOfHighPromotionRate() { |
if (IsMarking()) { |
- if (allocation_marking_factor_ < kFastMarking) { |
+ if (marking_speed_ < kFastMarking) { |
if (FLAG_trace_gc) { |
PrintPID("Increasing marking speed to %d " |
"due to high promotion rate\n", |
static_cast<int>(kFastMarking)); |
} |
- allocation_marking_factor_ = kFastMarking; |
+ marking_speed_ = kFastMarking; |
} |
} |
} |
@@ -275,9 +276,10 @@ |
double steps_took_since_last_gc_; |
int64_t bytes_rescanned_; |
bool should_hurry_; |
- int allocation_marking_factor_; |
+ int marking_speed_; |
intptr_t bytes_scanned_; |
intptr_t allocated_; |
+ intptr_t write_barriers_invoked_since_last_step_; |
int no_marking_scope_depth_; |