comparison src/share/vm/gc_implementation/g1/concurrentZFThread.cpp @ 936:e1fdf4fd34dc

6871111: G1: remove the concurrent overhead tracker Summary: Removing the concurrent overhead tracker from G1, along with the GC overhead reporter and the G1AccountConcurrentOverhead (both of which rely on the the concurrent overhead tracker). Reviewed-by: iveresov, johnc
author tonyp
date Wed, 19 Aug 2009 12:53:25 -0400
parents 37f87013dfd8
children 89e0543e1737 035d2e036a9b
comparison
equal deleted inserted replaced
0:b53ed4427b0e 1:6213a4924d39
33 int ConcurrentZFThread::_sync_zfs = 0; 33 int ConcurrentZFThread::_sync_zfs = 0;
34 int ConcurrentZFThread::_zf_waits = 0; 34 int ConcurrentZFThread::_zf_waits = 0;
35 int ConcurrentZFThread::_regions_filled = 0; 35 int ConcurrentZFThread::_regions_filled = 0;
36 36
37 ConcurrentZFThread::ConcurrentZFThread() : 37 ConcurrentZFThread::ConcurrentZFThread() :
38 ConcurrentGCThread(), 38 ConcurrentGCThread()
39 _co_tracker(G1ZFGroup)
40 { 39 {
41 create_and_start(); 40 create_and_start();
42 } 41 }
43 42
44 void ConcurrentZFThread::wait_for_ZF_completed(HeapRegion* hr) { 43 void ConcurrentZFThread::wait_for_ZF_completed(HeapRegion* hr) {
69 void ConcurrentZFThread::run() { 68 void ConcurrentZFThread::run() {
70 initialize_in_thread(); 69 initialize_in_thread();
71 Thread* thr_self = Thread::current(); 70 Thread* thr_self = Thread::current();
72 _vtime_start = os::elapsedVTime(); 71 _vtime_start = os::elapsedVTime();
73 wait_for_universe_init(); 72 wait_for_universe_init();
74 _co_tracker.enable();
75 _co_tracker.start();
76 73
77 G1CollectedHeap* g1 = G1CollectedHeap::heap(); 74 G1CollectedHeap* g1 = G1CollectedHeap::heap();
78 _sts.join(); 75 _sts.join();
79 while (!_should_terminate) { 76 while (!_should_terminate) {
80 _sts.leave(); 77 _sts.leave();
133 break; 130 break;
134 } 131 }
135 } 132 }
136 _vtime_accum = (os::elapsedVTime() - _vtime_start); 133 _vtime_accum = (os::elapsedVTime() - _vtime_start);
137 _sts.join(); 134 _sts.join();
138
139 _co_tracker.update();
140 } 135 }
141 _co_tracker.update(false);
142 _sts.leave(); 136 _sts.leave();
143 137
144 assert(_should_terminate, "just checking"); 138 assert(_should_terminate, "just checking");
145 terminate(); 139 terminate();
146 } 140 }