< prev index next >
src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
Print this page
rev 10498 : [backport] Move heuristics from ShCollectorPolicy to ShHeap
rev 10637 : [backport] Purge partial heuristics and connection matrix infrastructure
*** 39,49 ****
class ConcurrentGCTimer;
class outputStream;
class ShenandoahCollectorPolicy: public CollectorPolicy {
private:
- size_t _success_partial_gcs;
size_t _success_concurrent_gcs;
size_t _success_degenerated_gcs;
size_t _success_full_gcs;
size_t _alloc_failure_degenerated;
size_t _alloc_failure_degenerated_upgrade_to_full;
--- 39,48 ----
*** 52,71 ****
size_t _explicit_full;
size_t _degen_points[ShenandoahHeap::_DEGENERATED_LIMIT];
ShenandoahSharedFlag _in_shutdown;
- ShenandoahHeuristics* _heuristics;
ShenandoahTracer* _tracer;
size_t _cycle_counter;
public:
ShenandoahCollectorPolicy();
! virtual ShenandoahCollectorPolicy* as_pgc_policy();
BarrierSet::Name barrier_set_name();
HeapWord* mem_allocate_work(size_t size,
bool is_tlab,
--- 51,69 ----
size_t _explicit_full;
size_t _degen_points[ShenandoahHeap::_DEGENERATED_LIMIT];
ShenandoahSharedFlag _in_shutdown;
ShenandoahTracer* _tracer;
size_t _cycle_counter;
public:
ShenandoahCollectorPolicy();
! void post_heap_initialize() {};
BarrierSet::Name barrier_set_name();
HeapWord* mem_allocate_work(size_t size,
bool is_tlab,
*** 73,124 ****
HeapWord* satisfy_failed_allocation(size_t size, bool is_tlab);
void initialize_alignments();
- void post_heap_initialize();
-
- void record_gc_start();
- void record_gc_end();
-
// TODO: This is different from gc_end: that one encompasses one VM operation.
// These two encompass the entire cycle.
void record_cycle_start();
- void record_cycle_end();
-
- void record_phase_time(ShenandoahPhaseTimings::Phase phase, double secs);
- void record_success_partial();
void record_success_concurrent();
void record_success_degenerated();
void record_success_full();
void record_alloc_failure_to_degenerated(ShenandoahHeap::ShenandoahDegenPoint point);
void record_alloc_failure_to_full();
void record_degenerated_upgrade_to_full();
void record_explicit_to_concurrent();
void record_explicit_to_full();
- bool should_start_normal_gc();
-
- // Returns true when there should be a separate concurrent reference
- // updating phase after evacuation.
- bool should_start_update_refs();
- bool update_refs();
-
- bool should_degenerate_cycle();
-
-
- void record_peak_occupancy();
-
void record_shutdown();
bool is_at_shutdown();
- void choose_collection_set(ShenandoahCollectionSet* collection_set);
-
- bool should_process_references();
- bool should_unload_classes();
-
ShenandoahTracer* tracer() {return _tracer;}
size_t cycle_counter() const;
void print_gc_stats(outputStream* out) const;
--- 71,96 ----
< prev index next >