< prev index next >

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

Print this page
rev 60593 : 8252035: G1: Clean up G1CollectedHeap::*reserved* methods
Reviewed-by:


  61   G1RemSetSummary _prev_period_summary;
  62 
  63   G1CollectedHeap* _g1h;
  64 
  65   G1CardTable*           _ct;
  66   G1Policy*              _g1p;
  67   G1HotCardCache*        _hot_card_cache;
  68 
  69   void print_merge_heap_roots_stats();
  70 public:
  71 
  72   typedef CardTable::CardValue CardValue;
  73   // Gives an approximation on how many threads can be expected to add records to
  74   // a remembered set in parallel. This can be used for sizing data structures to
  75   // decrease performance losses due to data structure sharing.
  76   // Examples for quantities that influence this value are the maximum number of
  77   // mutator threads, maximum number of concurrent refinement or GC threads.
  78   static uint num_par_rem_sets();
  79 
  80   // Initialize data that depends on the heap size being known.
  81   void initialize(size_t capacity, uint max_regions);
  82 
  83   G1RemSet(G1CollectedHeap* g1h,
  84            G1CardTable* ct,
  85            G1HotCardCache* hot_card_cache);
  86   ~G1RemSet();
  87 
  88   // Scan all cards in the non-collection set regions that potentially contain
  89   // references into the current whole collection set.
  90   void scan_heap_roots(G1ParScanThreadState* pss,
  91                        uint worker_id,
  92                        G1GCPhaseTimes::GCParPhases scan_phase,
  93                        G1GCPhaseTimes::GCParPhases objcopy_phase);
  94 
  95   // Merge cards from various sources (remembered sets, hot card cache, log buffers)
  96   // and calculate the cards that need to be scanned later (via scan_heap_roots()).
  97   // If initial_evacuation is set, this is called during the initial evacuation.
  98   void merge_heap_roots(bool initial_evacuation);
  99 
 100   // Prepare for and cleanup after scanning the heap roots. Must be called
 101   // once before and after in sequential code.




  61   G1RemSetSummary _prev_period_summary;
  62 
  63   G1CollectedHeap* _g1h;
  64 
  65   G1CardTable*           _ct;
  66   G1Policy*              _g1p;
  67   G1HotCardCache*        _hot_card_cache;
  68 
  69   void print_merge_heap_roots_stats();
  70 public:
  71 
  72   typedef CardTable::CardValue CardValue;
  73   // Gives an approximation on how many threads can be expected to add records to
  74   // a remembered set in parallel. This can be used for sizing data structures to
  75   // decrease performance losses due to data structure sharing.
  76   // Examples for quantities that influence this value are the maximum number of
  77   // mutator threads, maximum number of concurrent refinement or GC threads.
  78   static uint num_par_rem_sets();
  79 
  80   // Initialize data that depends on the heap size being known.
  81   void initialize(uint max_regions);
  82 
  83   G1RemSet(G1CollectedHeap* g1h,
  84            G1CardTable* ct,
  85            G1HotCardCache* hot_card_cache);
  86   ~G1RemSet();
  87 
  88   // Scan all cards in the non-collection set regions that potentially contain
  89   // references into the current whole collection set.
  90   void scan_heap_roots(G1ParScanThreadState* pss,
  91                        uint worker_id,
  92                        G1GCPhaseTimes::GCParPhases scan_phase,
  93                        G1GCPhaseTimes::GCParPhases objcopy_phase);
  94 
  95   // Merge cards from various sources (remembered sets, hot card cache, log buffers)
  96   // and calculate the cards that need to be scanned later (via scan_heap_roots()).
  97   // If initial_evacuation is set, this is called during the initial evacuation.
  98   void merge_heap_roots(bool initial_evacuation);
  99 
 100   // Prepare for and cleanup after scanning the heap roots. Must be called
 101   // once before and after in sequential code.


< prev index next >