Lines Matching refs:collector

278       last_gc_type_(collector::kGcTypeNone),  in Heap()
279 next_gc_type_(collector::kGcTypePartial), in Heap()
649 if (collector::SemiSpace::kUseRememberedSet && non_moving_space_ != main_space_) { in Heap()
687 garbage_collectors_.push_back(new collector::MarkSweep(this, concurrent)); in Heap()
688 garbage_collectors_.push_back(new collector::PartialMarkSweep(this, concurrent)); in Heap()
689 garbage_collectors_.push_back(new collector::StickyMarkSweep(this, concurrent)); in Heap()
696 semi_space_collector_ = new collector::SemiSpace(this); in Heap()
700 concurrent_copying_collector_ = new collector::ConcurrentCopying(this, in Heap()
706 young_concurrent_copying_collector_ = new collector::ConcurrentCopying( in Heap()
810 if (collector::SemiSpace::kUseRememberedSet) { in CreateMallocSpaceFromMemMap()
837 if (collector::SemiSpace::kUseRememberedSet && main_space_ != nullptr) { in CreateMainMallocSpace()
1136 for (auto* collector : garbage_collectors_) { in GetTotalGcCpuTime() local
1137 sum += collector->GetTotalCpuTime(); in GetTotalGcCpuTime()
1148 for (auto* collector : garbage_collectors_) { in DumpGcPerformanceInfo() local
1149 total_duration += collector->GetCumulativeTimings().GetTotalNs(); in DumpGcPerformanceInfo()
1150 total_paused_time += collector->GetTotalPausedTimeNs(); in DumpGcPerformanceInfo()
1151 collector->DumpPerformanceInfo(os); in DumpGcPerformanceInfo()
1212 for (auto* collector : garbage_collectors_) { in ResetGcPerformanceInfo() local
1213 collector->ResetMeasurements(); in ResetGcPerformanceInfo()
1242 for (auto* collector : garbage_collectors_) { in GetGcCount() local
1243 gc_count += collector->GetCumulativeTimings().GetIterations(); in GetGcCount()
1250 for (auto* collector : garbage_collectors_) { in GetGcTime() local
1251 gc_time += collector->GetCumulativeTimings().GetTotalNs(); in GetGcTime()
1425 CollectGarbageInternal(collector::kGcTypeFull, in DoPendingCollectorTransition()
1537 FinishGC(self, collector::kGcTypeNone); in TrimSpaces()
1778 collector::GcType last_gc = in AllocateInternalWithGc()
1786 if (last_gc != collector::kGcTypeNone) { in AllocateInternalWithGc()
1807 collector::GcType tried_type = next_gc_type_; in AllocateInternalWithGc()
1810 CollectGarbageInternal(tried_type, kGcCauseForAlloc, false) != collector::kGcTypeNone); in AllocateInternalWithGc()
2087 FinishGC(self, collector::kGcTypeNone); in PerformHomogeneousSpaceCompact()
2090 collector::GarbageCollector* collector; in PerformHomogeneousSpaceCompact() local
2102 collector = Compact(to_space, from_space, kGcCauseHomogeneousSpaceCompact); in PerformHomogeneousSpaceCompact()
2122 LogGC(kGcCauseHomogeneousSpaceCompact, collector); in PerformHomogeneousSpaceCompact()
2123 FinishGC(self, collector::kGcTypeFull); in PerformHomogeneousSpaceCompact()
2142 gc_plan_.push_back(collector::kGcTypeSticky); in ChangeCollector()
2144 gc_plan_.push_back(collector::kGcTypeFull); in ChangeCollector()
2153 gc_plan_.push_back(collector::kGcTypeFull); in ChangeCollector()
2162 gc_plan_.push_back(collector::kGcTypeSticky); in ChangeCollector()
2163 gc_plan_.push_back(collector::kGcTypePartial); in ChangeCollector()
2164 gc_plan_.push_back(collector::kGcTypeFull); in ChangeCollector()
2169 gc_plan_.push_back(collector::kGcTypeSticky); in ChangeCollector()
2170 gc_plan_.push_back(collector::kGcTypePartial); in ChangeCollector()
2171 gc_plan_.push_back(collector::kGcTypeFull); in ChangeCollector()
2191 class ZygoteCompactingCollector final : public collector::SemiSpace {
2318 CollectGarbageInternal(collector::kGcTypeFull, kGcCauseBackground, false); in PreZygoteFork()
2403 if (collector::SemiSpace::kUseRememberedSet) { in PreZygoteFork()
2427 && gc::collector::ConcurrentCopying::kGrayDirtyImmuneObjects; in PreZygoteFork()
2464 if (collector::SemiSpace::kUseRememberedSet) { in PreZygoteFork()
2509 collector::GarbageCollector* Heap::Compact(space::ContinuousMemMapAllocSpace* target_space, in Compact()
2575 collector::GcType Heap::CollectGarbageInternal(collector::GcType gc_type, in CollectGarbageInternal()
2582 case collector::kGcTypePartial: { in CollectGarbageInternal()
2584 return collector::kGcTypeNone; in CollectGarbageInternal()
2598 return collector::kGcTypeNone; in CollectGarbageInternal()
2611 return collector::kGcTypeNone; in CollectGarbageInternal()
2614 return collector::kGcTypeNone; in CollectGarbageInternal()
2624 DCHECK_LT(gc_type, collector::kGcTypeMax); in CollectGarbageInternal()
2625 DCHECK_NE(gc_type, collector::kGcTypeNone); in CollectGarbageInternal()
2627 collector::GarbageCollector* collector = nullptr; in CollectGarbageInternal() local
2639 collector = semi_space_collector_; in CollectGarbageInternal()
2645 active_concurrent_copying_collector_ = (gc_type == collector::kGcTypeSticky) ? in CollectGarbageInternal()
2649 collector = active_concurrent_copying_collector_; in CollectGarbageInternal()
2654 if (collector != active_concurrent_copying_collector_) { in CollectGarbageInternal()
2662 gc_type = collector::kGcTypeFull; // TODO: Not hard code this in. in CollectGarbageInternal()
2665 collector = FindCollectorByGcType(gc_type); in CollectGarbageInternal()
2670 CHECK(collector != nullptr) in CollectGarbageInternal()
2673 collector->Run(gc_cause, clear_soft_references || runtime->IsZygote()); in CollectGarbageInternal()
2679 GrowForUtilization(collector, bytes_allocated_before_gc); in CollectGarbageInternal()
2680 LogGC(gc_cause, collector); in CollectGarbageInternal()
2700 void Heap::LogGC(GcCause gc_cause, collector::GarbageCollector* collector) { in LogGC() argument
2723 LOG(INFO) << gc_cause << " " << collector->GetName() in LogGC()
2735 void Heap::FinishGC(Thread* self, collector::GcType gc_type) { in FinishGC()
2738 if (gc_type != collector::kGcTypeNone) { in FinishGC()
3018 CollectGarbageInternal(collector::kGcTypeSticky, kGcCauseForAlloc, false); in PushOnAllocationStackWithInternalGC()
3038 CollectGarbageInternal(collector::kGcTypeSticky, kGcCauseForAlloc, false); in PushOnThreadLocalAllocationStackWithInternalGC()
3264 DCHECK(collector::SemiSpace::kUseRememberedSet) << static_cast<int>(collector_type_); in ProcessCards()
3300 void Heap::PreGcVerificationPaused(collector::GarbageCollector* gc) { in PreGcVerificationPaused()
3334 void Heap::PreGcVerification(collector::GarbageCollector* gc) { in PreGcVerification()
3336 collector::GarbageCollector::ScopedPause pause(gc, false); in PreGcVerification()
3341 void Heap::PrePauseRosAllocVerification(collector::GarbageCollector* gc ATTRIBUTE_UNUSED) { in PrePauseRosAllocVerification()
3348 void Heap::PreSweepingGcVerification(collector::GarbageCollector* gc) { in PreSweepingGcVerification()
3379 void Heap::PostGcVerificationPaused(collector::GarbageCollector* gc) { in PostGcVerificationPaused()
3386 collector::MarkSweep* mark_sweep = down_cast<collector::MarkSweep*>(gc); in PostGcVerificationPaused()
3402 void Heap::PostGcVerification(collector::GarbageCollector* gc) { in PostGcVerification()
3404 collector::GarbageCollector::ScopedPause pause(gc, false); in PostGcVerification()
3419 collector::GcType Heap::WaitForGcToComplete(GcCause cause, Thread* self) { in WaitForGcToComplete()
3425 collector::GcType Heap::WaitForGcToCompleteLocked(GcCause cause, Thread* self) { in WaitForGcToCompleteLocked()
3427 collector::GcType last_gc_type = collector::kGcTypeNone; in WaitForGcToCompleteLocked()
3498 collector::GarbageCollector* Heap::FindCollectorByGcType(collector::GcType gc_type) { in FindCollectorByGcType()
3499 for (auto* collector : garbage_collectors_) { in FindCollectorByGcType() local
3500 if (collector->GetCollectorType() == collector_type_ && in FindCollectorByGcType()
3501 collector->GetGcType() == gc_type) { in FindCollectorByGcType()
3502 return collector; in FindCollectorByGcType()
3516 void Heap::GrowForUtilization(collector::GarbageCollector* collector_ran, in GrowForUtilization()
3524 collector::GcType gc_type = collector_ran->GetGcType(); in GrowForUtilization()
3528 if (gc_type != collector::kGcTypeSticky) { in GrowForUtilization()
3536 next_gc_type_ = collector::kGcTypeSticky; in GrowForUtilization()
3538 collector::GcType non_sticky_gc_type = NonStickyGcType(); in GrowForUtilization()
3540 collector::GarbageCollector* non_sticky_collector = FindCollectorByGcType(non_sticky_gc_type); in GrowForUtilization()
3543 non_sticky_collector = FindCollectorByGcType(collector::kGcTypePartial); in GrowForUtilization()
3560 next_gc_type_ = collector::kGcTypeSticky; in GrowForUtilization()
3717 if (WaitForGcToComplete(cause, self) == collector::kGcTypeNone) { in ConcurrentGC()
3720 collector::GcType next_gc_type = next_gc_type_; in ConcurrentGC()
3722 if (force_full && next_gc_type == collector::kGcTypeSticky) { in ConcurrentGC()
3725 if (CollectGarbageInternal(next_gc_type, cause, false) == collector::kGcTypeNone) { in ConcurrentGC()
3726 for (collector::GcType gc_type : gc_plan_) { in ConcurrentGC()
3729 CollectGarbageInternal(gc_type, cause, false) != collector::kGcTypeNone) { in ConcurrentGC()