< 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 >