< prev index next >

src/share/vm/services/memoryService.cpp

Print this page
rev 7974 : imported patch genspecs


 113     _major_gc_manager->set_num_gc_threads(count);
 114   }
 115 
 116   // All memory pools and memory managers are initialized.
 117   //
 118   _minor_gc_manager->initialize_gc_stat_info();
 119   _major_gc_manager->initialize_gc_stat_info();
 120 }
 121 
 122 // Add memory pools for GenCollectedHeap
 123 // This function currently only supports two generations collected heap.
 124 // The collector for GenCollectedHeap will have two memory managers.
 125 void MemoryService::add_gen_collected_heap_info(GenCollectedHeap* heap) {
 126   CollectorPolicy* policy = heap->collector_policy();
 127 
 128   assert(policy->is_generation_policy(), "Only support two generations");
 129   guarantee(heap->n_gens() == 2, "Only support two-generation heap");
 130 
 131   GenCollectorPolicy* gen_policy = policy->as_generation_policy();
 132   if (gen_policy != NULL) {
 133     GenerationSpec** specs = gen_policy->generations();
 134     Generation::Name kind = specs[0]->name();
 135     switch (kind) {
 136       case Generation::DefNew:
 137         _minor_gc_manager = MemoryManager::get_copy_memory_manager();
 138         break;
 139 #if INCLUDE_ALL_GCS
 140       case Generation::ParNew:
 141         _minor_gc_manager = MemoryManager::get_parnew_memory_manager();
 142         break;
 143 #endif // INCLUDE_ALL_GCS
 144       default:
 145         guarantee(false, "Unrecognized generation spec");
 146         break;
 147     }
 148     if (policy->is_mark_sweep_policy()) {
 149       _major_gc_manager = MemoryManager::get_msc_memory_manager();
 150 #if INCLUDE_ALL_GCS
 151     } else if (policy->is_concurrent_mark_sweep_policy()) {
 152       _major_gc_manager = MemoryManager::get_cms_memory_manager();
 153 #endif // INCLUDE_ALL_GCS
 154     } else {




 113     _major_gc_manager->set_num_gc_threads(count);
 114   }
 115 
 116   // All memory pools and memory managers are initialized.
 117   //
 118   _minor_gc_manager->initialize_gc_stat_info();
 119   _major_gc_manager->initialize_gc_stat_info();
 120 }
 121 
 122 // Add memory pools for GenCollectedHeap
 123 // This function currently only supports two generations collected heap.
 124 // The collector for GenCollectedHeap will have two memory managers.
 125 void MemoryService::add_gen_collected_heap_info(GenCollectedHeap* heap) {
 126   CollectorPolicy* policy = heap->collector_policy();
 127 
 128   assert(policy->is_generation_policy(), "Only support two generations");
 129   guarantee(heap->n_gens() == 2, "Only support two-generation heap");
 130 
 131   GenCollectorPolicy* gen_policy = policy->as_generation_policy();
 132   if (gen_policy != NULL) {
 133     Generation::Name kind = gen_policy->young_gen_spec()->name();

 134     switch (kind) {
 135       case Generation::DefNew:
 136         _minor_gc_manager = MemoryManager::get_copy_memory_manager();
 137         break;
 138 #if INCLUDE_ALL_GCS
 139       case Generation::ParNew:
 140         _minor_gc_manager = MemoryManager::get_parnew_memory_manager();
 141         break;
 142 #endif // INCLUDE_ALL_GCS
 143       default:
 144         guarantee(false, "Unrecognized generation spec");
 145         break;
 146     }
 147     if (policy->is_mark_sweep_policy()) {
 148       _major_gc_manager = MemoryManager::get_msc_memory_manager();
 149 #if INCLUDE_ALL_GCS
 150     } else if (policy->is_concurrent_mark_sweep_policy()) {
 151       _major_gc_manager = MemoryManager::get_cms_memory_manager();
 152 #endif // INCLUDE_ALL_GCS
 153     } else {


< prev index next >