< prev index next >

src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp

Print this page




 280   GCCause::Cause gc_cause = heap->gc_cause();
 281   assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
 282 
 283   // Check for potential problems.
 284   if (!should_attempt_scavenge()) {
 285     return false;
 286   }
 287 
 288   _gc_tracer.report_gc_start(heap->gc_cause(), _gc_timer.gc_start());
 289 
 290   bool promotion_failure_occurred = false;
 291 
 292   PSYoungGen* young_gen = heap->young_gen();
 293   PSOldGen* old_gen = heap->old_gen();
 294   PSAdaptiveSizePolicy* size_policy = heap->size_policy();
 295 
 296   heap->increment_total_collections();
 297 
 298   AdaptiveSizePolicyOutput(size_policy, heap->total_collections());
 299 
 300   if ((gc_cause != GCCause::_java_lang_system_gc) ||
 301        UseAdaptiveSizePolicyWithSystemGC) {
 302     // Gather the feedback data for eden occupancy.
 303     young_gen->eden_space()->accumulate_statistics();
 304   }
 305 
 306   if (ZapUnusedHeapArea) {
 307     // Save information needed to minimize mangling
 308     heap->record_gen_tops_before_GC();
 309   }
 310 
 311   heap->print_heap_before_gc();
 312   heap->trace_heap_before_gc(&_gc_tracer);
 313 
 314   assert(!NeverTenure || _tenuring_threshold == markOopDesc::max_age + 1, "Sanity");
 315   assert(!AlwaysTenure || _tenuring_threshold == 0, "Sanity");
 316 
 317   size_t prev_used = heap->used();
 318 
 319   // Fill in TLABs
 320   heap->accumulate_statistics_all_tlabs();




 280   GCCause::Cause gc_cause = heap->gc_cause();
 281   assert(heap->kind() == CollectedHeap::ParallelScavengeHeap, "Sanity");
 282 
 283   // Check for potential problems.
 284   if (!should_attempt_scavenge()) {
 285     return false;
 286   }
 287 
 288   _gc_tracer.report_gc_start(heap->gc_cause(), _gc_timer.gc_start());
 289 
 290   bool promotion_failure_occurred = false;
 291 
 292   PSYoungGen* young_gen = heap->young_gen();
 293   PSOldGen* old_gen = heap->old_gen();
 294   PSAdaptiveSizePolicy* size_policy = heap->size_policy();
 295 
 296   heap->increment_total_collections();
 297 
 298   AdaptiveSizePolicyOutput(size_policy, heap->total_collections());
 299 
 300   if (!GCCause::is_user_requested_gc(gc_cause) ||
 301        UseAdaptiveSizePolicyWithSystemGC) {
 302     // Gather the feedback data for eden occupancy.
 303     young_gen->eden_space()->accumulate_statistics();
 304   }
 305 
 306   if (ZapUnusedHeapArea) {
 307     // Save information needed to minimize mangling
 308     heap->record_gen_tops_before_GC();
 309   }
 310 
 311   heap->print_heap_before_gc();
 312   heap->trace_heap_before_gc(&_gc_tracer);
 313 
 314   assert(!NeverTenure || _tenuring_threshold == markOopDesc::max_age + 1, "Sanity");
 315   assert(!AlwaysTenure || _tenuring_threshold == 0, "Sanity");
 316 
 317   size_t prev_used = heap->used();
 318 
 319   // Fill in TLABs
 320   heap->accumulate_statistics_all_tlabs();


< prev index next >