< prev index next >
src/share/vm/gc/g1/g1CollectedHeap.hpp
Print this page
rev 8817 : [mq]: jon-review-statistics
*** 32,41 ****
--- 32,42 ----
#include "gc/g1/g1BiasedArray.hpp"
#include "gc/g1/g1CollectorState.hpp"
#include "gc/g1/g1HRPrinter.hpp"
#include "gc/g1/g1InCSetState.hpp"
#include "gc/g1/g1MonitoringSupport.hpp"
+ #include "gc/g1/g1EvacStats.hpp"
#include "gc/g1/g1SATBCardTableModRefBS.hpp"
#include "gc/g1/g1YCTypes.hpp"
#include "gc/g1/hSpaceCounters.hpp"
#include "gc/g1/heapRegionManager.hpp"
#include "gc/g1/heapRegionSet.hpp"
*** 182,193 ****
friend class VM_G1CollectForAllocation;
friend class VM_G1CollectFull;
friend class VM_G1IncCollectionPause;
friend class VMStructs;
friend class MutatorAllocRegion;
! friend class SurvivorGCAllocRegion;
! friend class OldGCAllocRegion;
// Closures used in implementation.
friend class G1ParScanThreadState;
friend class G1ParTask;
friend class G1PLABAllocator;
--- 183,193 ----
friend class VM_G1CollectForAllocation;
friend class VM_G1CollectFull;
friend class VM_G1IncCollectionPause;
friend class VMStructs;
friend class MutatorAllocRegion;
! friend class G1GCAllocRegion;
// Closures used in implementation.
friend class G1ParScanThreadState;
friend class G1ParTask;
friend class G1PLABAllocator;
*** 243,253 ****
G1RegionMappingChangedListener _listener;
// The sequence of all heap regions in the heap.
HeapRegionManager _hrm;
! // Handles non-humongous allocations in the G1CollectedHeap.
G1Allocator* _allocator;
// Outside of GC pauses, the number of bytes used in all regions other
// than the current allocation region(s).
size_t _summary_bytes_used;
--- 243,253 ----
G1RegionMappingChangedListener _listener;
// The sequence of all heap regions in the heap.
HeapRegionManager _hrm;
! // Manages all allocations with regions except humongous object allocations.
G1Allocator* _allocator;
// Outside of GC pauses, the number of bytes used in all regions other
// than the current allocation region(s).
size_t _summary_bytes_used;
*** 261,275 ****
G1ArchiveAllocator* _archive_allocator;
// Statistics for each allocation context
AllocationContextStats _allocation_context_stats;
! // PLAB sizing policy for survivors.
! PLABStats _survivor_plab_stats;
! // PLAB sizing policy for tenured objects.
! PLABStats _old_plab_stats;
// It specifies whether we should attempt to expand the heap after a
// region allocation failure. If heap expansion fails we set this to
// false so that we don't re-attempt the heap expansion (it's likely
// that subsequent expansion attempts will also fail if one fails).
--- 261,275 ----
G1ArchiveAllocator* _archive_allocator;
// Statistics for each allocation context
AllocationContextStats _allocation_context_stats;
! // GC allocation statistics policy for survivors.
! G1EvacStats _survivor_evac_stats;
! // GC allocation statistics policy for tenured objects.
! G1EvacStats _old_evac_stats;
// It specifies whether we should attempt to expand the heap after a
// region allocation failure. If heap expansion fails we set this to
// false so that we don't re-attempt the heap expansion (it's likely
// that subsequent expansion attempts will also fail if one fails).
*** 604,614 ****
// false otherwise.
// (Rounds up to a HeapRegion boundary.)
bool expand(size_t expand_bytes);
// Returns the PLAB statistics for a given destination.
! inline PLABStats* alloc_buffer_stats(InCSetState dest);
// Determines PLAB size for a given destination.
inline size_t desired_plab_sz(InCSetState dest);
inline AllocationContextStats& allocation_context_stats();
--- 604,614 ----
// false otherwise.
// (Rounds up to a HeapRegion boundary.)
bool expand(size_t expand_bytes);
// Returns the PLAB statistics for a given destination.
! inline G1EvacStats* alloc_buffer_stats(InCSetState dest);
// Determines PLAB size for a given destination.
inline size_t desired_plab_sz(InCSetState dest);
inline AllocationContextStats& allocation_context_stats();
*** 787,796 ****
--- 787,799 ----
bool do_collection_pause_at_safepoint(double target_pause_time_ms);
// Actually do the work of evacuating the collection set.
void evacuate_collection_set(EvacuationInfo& evacuation_info);
+ // Update object copying statistics.
+ void record_obj_copy_mem_stats();
+
// The g1 remembered set of the heap.
G1RemSet* _g1_rem_set;
// A set of cards that cover the objects for which the Rsets should be updated
// concurrently after the collection.
< prev index next >