< prev index next >
src/hotspot/share/gc/parallel/parallelScavengeHeap.hpp
Print this page
*** 23,41 ****
*/
#ifndef SHARE_VM_GC_PARALLEL_PARALLELSCAVENGEHEAP_HPP
#define SHARE_VM_GC_PARALLEL_PARALLELSCAVENGEHEAP_HPP
- #include "gc/parallel/generationSizer.hpp"
#include "gc/parallel/objectStartArray.hpp"
#include "gc/parallel/psGCAdaptivePolicyCounters.hpp"
#include "gc/parallel/psOldGen.hpp"
#include "gc/parallel/psYoungGen.hpp"
#include "gc/shared/collectedHeap.hpp"
- #include "gc/shared/collectorPolicy.hpp"
#include "gc/shared/gcPolicyCounters.hpp"
#include "gc/shared/gcWhen.hpp"
#include "gc/shared/strongRootsScope.hpp"
#include "memory/metaspace.hpp"
#include "utilities/growableArray.hpp"
#include "utilities/ostream.hpp"
--- 23,41 ----
*/
#ifndef SHARE_VM_GC_PARALLEL_PARALLELSCAVENGEHEAP_HPP
#define SHARE_VM_GC_PARALLEL_PARALLELSCAVENGEHEAP_HPP
#include "gc/parallel/objectStartArray.hpp"
#include "gc/parallel/psGCAdaptivePolicyCounters.hpp"
#include "gc/parallel/psOldGen.hpp"
+ #include "gc/parallel/psSettings.hpp"
#include "gc/parallel/psYoungGen.hpp"
#include "gc/shared/collectedHeap.hpp"
#include "gc/shared/gcPolicyCounters.hpp"
#include "gc/shared/gcWhen.hpp"
+ #include "gc/shared/softRefPolicy.hpp"
#include "gc/shared/strongRootsScope.hpp"
#include "memory/metaspace.hpp"
#include "utilities/growableArray.hpp"
#include "utilities/ostream.hpp"
*** 43,52 ****
--- 43,53 ----
class GCHeapSummary;
class GCTaskManager;
class MemoryManager;
class MemoryPool;
class PSAdaptiveSizePolicy;
+ class PSGCAdaptivePolicyCounters;
class PSHeapSummary;
class ParallelScavengeHeap : public CollectedHeap {
friend class VMStructs;
private:
*** 55,65 ****
// Sizing policy for entire heap
static PSAdaptiveSizePolicy* _size_policy;
static PSGCAdaptivePolicyCounters* _gc_policy_counters;
! GenerationSizer* _collector_policy;
// Collection of generations that are adjacent in the
// space reserved for the heap.
AdjoiningGenerations* _gens;
unsigned int _death_march_count;
--- 56,68 ----
// Sizing policy for entire heap
static PSAdaptiveSizePolicy* _size_policy;
static PSGCAdaptivePolicyCounters* _gc_policy_counters;
! const PSSettings _settings;
!
! SoftRefPolicy _soft_ref_policy;
// Collection of generations that are adjacent in the
// space reserved for the heap.
AdjoiningGenerations* _gens;
unsigned int _death_march_count;
*** 85,96 ****
inline bool should_alloc_in_eden(size_t size) const;
inline void death_march_check(HeapWord* const result, size_t size);
HeapWord* mem_allocate_old_gen(size_t size);
public:
! ParallelScavengeHeap(GenerationSizer* policy) :
! CollectedHeap(), _collector_policy(policy), _death_march_count(0) { }
// For use by VM operations
enum CollectionType {
Scavenge,
MarkSweep
--- 88,101 ----
inline bool should_alloc_in_eden(size_t size) const;
inline void death_march_check(HeapWord* const result, size_t size);
HeapWord* mem_allocate_old_gen(size_t size);
public:
! ParallelScavengeHeap(const PSSettings& settings) :
! CollectedHeap(),
! _settings(settings),
! _death_march_count(0) { }
// For use by VM operations
enum CollectionType {
Scavenge,
MarkSweep
*** 102,112 ****
virtual const char* name() const {
return "Parallel";
}
! virtual CollectorPolicy* collector_policy() const { return _collector_policy; }
virtual GrowableArray<GCMemoryManager*> memory_managers();
virtual GrowableArray<MemoryPool*> memory_pools();
static PSYoungGen* young_gen() { return _young_gen; }
--- 107,117 ----
virtual const char* name() const {
return "Parallel";
}
! virtual SoftRefPolicy* soft_ref_policy() { return &_soft_ref_policy; }
virtual GrowableArray<GCMemoryManager*> memory_managers();
virtual GrowableArray<MemoryPool*> memory_pools();
static PSYoungGen* young_gen() { return _young_gen; }
*** 127,142 ****
void post_initialize();
void update_counters();
// The alignment used for the various areas
! size_t space_alignment() { return _collector_policy->space_alignment(); }
! size_t generation_alignment() { return _collector_policy->gen_alignment(); }
// Return the (conservative) maximum heap alignment
static size_t conservative_max_heap_alignment() {
! return CollectorPolicy::compute_heap_alignment();
}
size_t capacity() const;
size_t used() const;
--- 132,148 ----
void post_initialize();
void update_counters();
// The alignment used for the various areas
! size_t gen_alignment() const { return _settings._gen_alignment; }
! size_t space_alignment() const { return _settings._space_alignment; }
! size_t heap_alignment() const { return _settings._heap_alignment; }
// Return the (conservative) maximum heap alignment
static size_t conservative_max_heap_alignment() {
! return compute_heap_alignment();
}
size_t capacity() const;
size_t used() const;
< prev index next >