src/share/vm/memory/collectorPolicy.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hs-gc-reduce Sdiff src/share/vm/memory

src/share/vm/memory/collectorPolicy.cpp

Print this page




 810   size_t gen0_capacity = gch->get_gen(0)->capacity_before_gc();
 811   return    (word_size > heap_word_size(gen0_capacity))
 812          || GC_locker::is_active_and_needs_gc()
 813          || gch->incremental_collection_failed();
 814 }
 815 
 816 
 817 //
 818 // MarkSweepPolicy methods
 819 //
 820 
 821 MarkSweepPolicy::MarkSweepPolicy() {
 822   initialize_all();
 823 }
 824 
 825 void MarkSweepPolicy::initialize_generations() {
 826   _generations = new GenerationSpecPtr[number_of_generations()];
 827   if (_generations == NULL)
 828     vm_exit_during_initialization("Unable to allocate gen spec");
 829 
 830   if (UseParNewGC && ParallelGCThreads > 0) {
 831     _generations[0] = new GenerationSpec(Generation::ParNew, _initial_gen0_size, _max_gen0_size);
 832   } else {
 833     _generations[0] = new GenerationSpec(Generation::DefNew, _initial_gen0_size, _max_gen0_size);
 834   }
 835   _generations[1] = new GenerationSpec(Generation::MarkSweepCompact, _initial_gen1_size, _max_gen1_size);
 836 
 837   if (_generations[0] == NULL || _generations[1] == NULL)
 838     vm_exit_during_initialization("Unable to allocate gen spec");
 839 }
 840 
 841 void MarkSweepPolicy::initialize_gc_policy_counters() {
 842   // initialize the policy counters - 2 collectors, 3 generations
 843   if (UseParNewGC && ParallelGCThreads > 0) {
 844     _gc_policy_counters = new GCPolicyCounters("ParNew:MSC", 2, 3);
 845   }
 846   else {
 847     _gc_policy_counters = new GCPolicyCounters("Copy:MSC", 2, 3);
 848   }
 849 }


 810   size_t gen0_capacity = gch->get_gen(0)->capacity_before_gc();
 811   return    (word_size > heap_word_size(gen0_capacity))
 812          || GC_locker::is_active_and_needs_gc()
 813          || gch->incremental_collection_failed();
 814 }
 815 
 816 
 817 //
 818 // MarkSweepPolicy methods
 819 //
 820 
 821 MarkSweepPolicy::MarkSweepPolicy() {
 822   initialize_all();
 823 }
 824 
 825 void MarkSweepPolicy::initialize_generations() {
 826   _generations = new GenerationSpecPtr[number_of_generations()];
 827   if (_generations == NULL)
 828     vm_exit_during_initialization("Unable to allocate gen spec");
 829 
 830   if (UseParNewGC) {
 831     _generations[0] = new GenerationSpec(Generation::ParNew, _initial_gen0_size, _max_gen0_size);
 832   } else {
 833     _generations[0] = new GenerationSpec(Generation::DefNew, _initial_gen0_size, _max_gen0_size);
 834   }
 835   _generations[1] = new GenerationSpec(Generation::MarkSweepCompact, _initial_gen1_size, _max_gen1_size);
 836 
 837   if (_generations[0] == NULL || _generations[1] == NULL)
 838     vm_exit_during_initialization("Unable to allocate gen spec");
 839 }
 840 
 841 void MarkSweepPolicy::initialize_gc_policy_counters() {
 842   // initialize the policy counters - 2 collectors, 3 generations
 843   if (UseParNewGC) {
 844     _gc_policy_counters = new GCPolicyCounters("ParNew:MSC", 2, 3);
 845   } else {

 846     _gc_policy_counters = new GCPolicyCounters("Copy:MSC", 2, 3);
 847   }
 848 }
src/share/vm/memory/collectorPolicy.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File