< prev index next >

src/hotspot/share/gc/g1/g1CollectedHeap.hpp

Print this page
rev 58105 : [mq]: 8236073-softmaxheapsize

@@ -74,10 +74,11 @@
 class SpaceClosure;
 class CompactibleSpaceClosure;
 class Space;
 class G1CardTableEntryClosure;
 class G1CollectionSet;
+class G1HeapSizingPolicy;
 class G1Policy;
 class G1HotCardCache;
 class G1RemSet;
 class G1YoungRemSetSamplingThread;
 class G1ConcurrentMark;

@@ -563,11 +564,11 @@
   G1MonitoringSupport* g1mm() {
     assert(_g1mm != NULL, "should have been initialized");
     return _g1mm;
   }
 
-  void resize_heap_if_necessary();
+  void resize_heap_after_full_gc();
 
   G1NUMA* numa() const { return _numa; }
 
   // Expand the garbage-first heap by at least the given size (in bytes!).
   // Returns true if the heap was expanded by the requested amount;

@@ -780,17 +781,21 @@
   void evacuate_optional_collection_set(G1ParScanThreadStateSet* per_thread_states);
 private:
   // Evacuate the next set of optional regions.
   void evacuate_next_optional_regions(G1ParScanThreadStateSet* per_thread_states);
 
+  bool expand_heap_after_young_collection();
+  void shrink_heap_after_young_collection();
+
 public:
   void pre_evacuate_collection_set(G1EvacuationInfo& evacuation_info, G1ParScanThreadStateSet* pss);
   void post_evacuate_collection_set(G1EvacuationInfo& evacuation_info,
                                     G1RedirtyCardsQueueSet* rdcqs,
                                     G1ParScanThreadStateSet* pss);
 
-  void expand_heap_after_young_collection();
+  void resize_heap_after_young_collection();
+
   // Update object copying statistics.
   void record_obj_copy_mem_stats();
 
   // The hot card cache for remembered set insertion optimization.
   G1HotCardCache* _hot_card_cache;

@@ -988,10 +993,11 @@
   }
 
   const G1CollectorState* collector_state() const { return &_collector_state; }
   G1CollectorState* collector_state() { return &_collector_state; }
 
+  G1HeapSizingPolicy* heap_sizing_policy() const { return _heap_sizing_policy; }
   // The current policy object for the collector.
   G1Policy* policy() const { return _policy; }
   // The remembered set.
   G1RemSet* rem_set() const { return _rem_set; }
 

@@ -1083,11 +1089,11 @@
   inline void old_set_add(HeapRegion* hr);
   inline void old_set_remove(HeapRegion* hr);
 
   inline void archive_set_add(HeapRegion* hr);
 
-  size_t non_young_capacity_bytes() {
+  size_t non_young_capacity_bytes() const {
     return (old_regions_count() + _archive_set.length() + humongous_regions_count()) * HeapRegion::GrainBytes;
   }
 
   // Determine whether the given region is one that we are using as an
   // old GC alloc region.

@@ -1285,10 +1291,13 @@
   virtual size_t max_capacity() const;
 
   // Return the size of reserved memory. Returns different value than max_capacity() when AllocateOldGenAt is used.
   virtual size_t max_reserved_capacity() const;
 
+  // Print the soft maximum heap capacity.
+  size_t soft_max_capacity() const;
+
   virtual jlong millis_since_last_gc();
 
 
   // Convenience function to be used in situations where the heap type can be
   // asserted to be this type.
< prev index next >