hotspot/src/share/vm/gc/g1/g1YoungGenSizer.cpp
changeset 37985 539c597ee0fa
parent 37493 5da80e1490de
child 38652 ba8be1a71dec
equal deleted inserted replaced
37511:2cd9b35e0eda 37985:539c597ee0fa
   106   }
   106   }
   107 
   107 
   108   assert(*min_young_length <= *max_young_length, "Invalid min/max young gen size values");
   108   assert(*min_young_length <= *max_young_length, "Invalid min/max young gen size values");
   109 }
   109 }
   110 
   110 
   111 uint G1YoungGenSizer::max_young_length(uint number_of_heap_regions) {
   111 void G1YoungGenSizer::adjust_max_new_size(uint number_of_heap_regions) {
       
   112 
   112   // We need to pass the desired values because recalculation may not update these
   113   // We need to pass the desired values because recalculation may not update these
   113   // values in some cases.
   114   // values in some cases.
   114   uint temp = _min_desired_young_length;
   115   uint temp = _min_desired_young_length;
   115   uint result = _max_desired_young_length;
   116   uint result = _max_desired_young_length;
   116   recalculate_min_max_young_length(number_of_heap_regions, &temp, &result);
   117   recalculate_min_max_young_length(number_of_heap_regions, &temp, &result);
   117   return result;
   118 
       
   119   size_t max_young_size = result * HeapRegion::GrainBytes;
       
   120   if (max_young_size != MaxNewSize) {
       
   121     FLAG_SET_ERGO(size_t, MaxNewSize, max_young_size);
       
   122   }
   118 }
   123 }
   119 
   124 
   120 void G1YoungGenSizer::heap_size_changed(uint new_number_of_heap_regions) {
   125 void G1YoungGenSizer::heap_size_changed(uint new_number_of_heap_regions) {
   121   recalculate_min_max_young_length(new_number_of_heap_regions, &_min_desired_young_length,
   126   recalculate_min_max_young_length(new_number_of_heap_regions, &_min_desired_young_length,
   122           &_max_desired_young_length);
   127           &_max_desired_young_length);