< prev index next >
src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
Print this page
rev 7854 : imported patch 8027962-per-phase-timing-measurements-for-strong-roots-processing
rev 7855 : [mq]: 8027962-bengt-suggestions
*** 793,803 ****
OopClosure* scan_non_heap_weak_roots,
G1ParPushHeapRSClosure* scan_rs,
CLDClosure* scan_strong_clds,
CLDClosure* scan_weak_clds,
CodeBlobClosure* scan_strong_code,
! uint worker_i);
// The concurrent marker (and the thread it runs in.)
ConcurrentMark* _cm;
ConcurrentMarkThread* _cmThread;
bool _mark_in_progress;
--- 793,804 ----
OopClosure* scan_non_heap_weak_roots,
G1ParPushHeapRSClosure* scan_rs,
CLDClosure* scan_strong_clds,
CLDClosure* scan_weak_clds,
CodeBlobClosure* scan_strong_code,
! uint worker_i,
! PhaseTimeData* phase_times);
// The concurrent marker (and the thread it runs in.)
ConcurrentMark* _cm;
ConcurrentMarkThread* _cmThread;
bool _mark_in_progress;
*** 981,1002 ****
// The heap region entry for a given worker is valid iff
// the associated time stamp value matches the current value
// of G1CollectedHeap::_gc_time_stamp.
uint* _worker_cset_start_region_time_stamp;
enum G1H_process_roots_tasks {
! G1H_PS_filter_satb_buffers,
G1H_PS_refProcessor_oops_do,
// Leave this one last.
G1H_PS_NumElements
};
! SubTasksDone* _process_strong_tasks;
!
! volatile bool _free_regions_coming;
!
! public:
SubTasksDone* process_strong_tasks() { return _process_strong_tasks; }
void set_refine_cte_cl_concurrency(bool concurrent);
--- 982,1011 ----
// The heap region entry for a given worker is valid iff
// the associated time stamp value matches the current value
// of G1CollectedHeap::_gc_time_stamp.
uint* _worker_cset_start_region_time_stamp;
+ SubTasksDone* _process_strong_tasks;
+
+ volatile bool _free_regions_coming;
+
+
+ public:
enum G1H_process_roots_tasks {
! G1H_PS_First,
! G1H_PS_filter_satb_buffers = G1H_PS_First,
G1H_PS_refProcessor_oops_do,
+ G1H_PS_wait_strong_cld_nmethods,
+ G1H_PS_weak_clds_oops_do,
// Leave this one last.
G1H_PS_NumElements
};
! // Returns the number of external root tasks.
! static uint num_ext_root_tasks() { return G1H_PS_NumElements + SharedHeap::SH_PS_NumElements; }
! // Returns a human readable description of the given external root task.
! static const char* ext_roots_task_string(uint i);
SubTasksDone* process_strong_tasks() { return _process_strong_tasks; }
void set_refine_cte_cl_concurrency(bool concurrent);
< prev index next >