< prev index next >

src/share/vm/gc/parallel/psScavenge.cpp

Print this page




 802     _consecutive_skipped_scavenges++;
 803     if (UsePerfData) {
 804       counters->update_scavenge_skipped(promoted_too_large);
 805     }
 806   }
 807   return result;
 808 }
 809 
 810   // Used to add tasks
 811 GCTaskManager* const PSScavenge::gc_task_manager() {
 812   assert(ParallelScavengeHeap::gc_task_manager() != NULL,
 813    "shouldn't return NULL");
 814   return ParallelScavengeHeap::gc_task_manager();
 815 }
 816 
 817 void PSScavenge::initialize() {
 818   // Arguments must have been parsed
 819 
 820   if (AlwaysTenure || NeverTenure) {
 821     assert(MaxTenuringThreshold == 0 || MaxTenuringThreshold == markOopDesc::max_age + 1,
 822         err_msg("MaxTenuringThreshold should be 0 or markOopDesc::max_age + 1, but is %d", (int) MaxTenuringThreshold));
 823     _tenuring_threshold = MaxTenuringThreshold;
 824   } else {
 825     // We want to smooth out our startup times for the AdaptiveSizePolicy
 826     _tenuring_threshold = (UseAdaptiveSizePolicy) ? InitialTenuringThreshold :
 827                                                     MaxTenuringThreshold;
 828   }
 829 
 830   ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 831   PSYoungGen* young_gen = heap->young_gen();
 832   PSOldGen* old_gen = heap->old_gen();
 833 
 834   // Set boundary between young_gen and old_gen
 835   assert(old_gen->reserved().end() <= young_gen->eden_space()->bottom(),
 836          "old above young");
 837   set_young_generation_boundary(young_gen->eden_space()->bottom());
 838 
 839   // Initialize ref handling object for scavenging.
 840   MemRegion mr = young_gen->reserved();
 841 
 842   _ref_processor =


 802     _consecutive_skipped_scavenges++;
 803     if (UsePerfData) {
 804       counters->update_scavenge_skipped(promoted_too_large);
 805     }
 806   }
 807   return result;
 808 }
 809 
 810   // Used to add tasks
 811 GCTaskManager* const PSScavenge::gc_task_manager() {
 812   assert(ParallelScavengeHeap::gc_task_manager() != NULL,
 813    "shouldn't return NULL");
 814   return ParallelScavengeHeap::gc_task_manager();
 815 }
 816 
 817 void PSScavenge::initialize() {
 818   // Arguments must have been parsed
 819 
 820   if (AlwaysTenure || NeverTenure) {
 821     assert(MaxTenuringThreshold == 0 || MaxTenuringThreshold == markOopDesc::max_age + 1,
 822            "MaxTenuringThreshold should be 0 or markOopDesc::max_age + 1, but is %d", (int) MaxTenuringThreshold);
 823     _tenuring_threshold = MaxTenuringThreshold;
 824   } else {
 825     // We want to smooth out our startup times for the AdaptiveSizePolicy
 826     _tenuring_threshold = (UseAdaptiveSizePolicy) ? InitialTenuringThreshold :
 827                                                     MaxTenuringThreshold;
 828   }
 829 
 830   ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
 831   PSYoungGen* young_gen = heap->young_gen();
 832   PSOldGen* old_gen = heap->old_gen();
 833 
 834   // Set boundary between young_gen and old_gen
 835   assert(old_gen->reserved().end() <= young_gen->eden_space()->bottom(),
 836          "old above young");
 837   set_young_generation_boundary(young_gen->eden_space()->bottom());
 838 
 839   // Initialize ref handling object for scavenging.
 840   MemRegion mr = young_gen->reserved();
 841 
 842   _ref_processor =
< prev index next >