< prev index next >

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

Print this page
rev 51816 : imported patch 8210557-more-logging


 527   ~G1ConcurrentMark();
 528 
 529   G1ConcurrentMarkThread* cm_thread() { return _cm_thread; }
 530 
 531   const G1CMBitMap* const prev_mark_bitmap() const { return _prev_mark_bitmap; }
 532   G1CMBitMap* next_mark_bitmap() const { return _next_mark_bitmap; }
 533 
 534   // Calculates the number of concurrent GC threads to be used in the marking phase.
 535   uint calc_active_marking_workers();
 536 
 537   // Moves all per-task cached data into global state.
 538   void flush_all_task_caches();
 539   // Prepare internal data structures for the next mark cycle. This includes clearing
 540   // the next mark bitmap and some internal data structures. This method is intended
 541   // to be called concurrently to the mutator. It will yield to safepoint requests.
 542   void cleanup_for_next_mark();
 543 
 544   // Clear the previous marking bitmap during safepoint.
 545   void clear_prev_bitmap(WorkGang* workers);
 546 
 547   // Return whether the next mark bitmap has no marks set. To be used for assertions
 548   // only. Will not yield to pause requests.
 549   bool next_mark_bitmap_is_clear();
 550 
 551   // These two methods do the work that needs to be done at the start and end of the
 552   // initial mark pause.
 553   void pre_initial_mark();
 554   void post_initial_mark();
 555 
 556   // Scan all the root regions and mark everything reachable from
 557   // them.
 558   void scan_root_regions();
 559 
 560   // Scan a single root region and mark everything reachable from it.
 561   void scan_root_region(HeapRegion* hr, uint worker_id);
 562 
 563   // Do concurrent phase of marking, to a tentative transitive closure.
 564   void mark_from_roots();
 565 
 566   // Do concurrent preclean work.
 567   void preclean();
 568 
 569   void remark();
 570 




 527   ~G1ConcurrentMark();
 528 
 529   G1ConcurrentMarkThread* cm_thread() { return _cm_thread; }
 530 
 531   const G1CMBitMap* const prev_mark_bitmap() const { return _prev_mark_bitmap; }
 532   G1CMBitMap* next_mark_bitmap() const { return _next_mark_bitmap; }
 533 
 534   // Calculates the number of concurrent GC threads to be used in the marking phase.
 535   uint calc_active_marking_workers();
 536 
 537   // Moves all per-task cached data into global state.
 538   void flush_all_task_caches();
 539   // Prepare internal data structures for the next mark cycle. This includes clearing
 540   // the next mark bitmap and some internal data structures. This method is intended
 541   // to be called concurrently to the mutator. It will yield to safepoint requests.
 542   void cleanup_for_next_mark();
 543 
 544   // Clear the previous marking bitmap during safepoint.
 545   void clear_prev_bitmap(WorkGang* workers);
 546 




 547   // These two methods do the work that needs to be done at the start and end of the
 548   // initial mark pause.
 549   void pre_initial_mark();
 550   void post_initial_mark();
 551 
 552   // Scan all the root regions and mark everything reachable from
 553   // them.
 554   void scan_root_regions();
 555 
 556   // Scan a single root region and mark everything reachable from it.
 557   void scan_root_region(HeapRegion* hr, uint worker_id);
 558 
 559   // Do concurrent phase of marking, to a tentative transitive closure.
 560   void mark_from_roots();
 561 
 562   // Do concurrent preclean work.
 563   void preclean();
 564 
 565   void remark();
 566 


< prev index next >