comparison src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp @ 5167:dc5ea6e27195

8013895: G1: G1SummarizeRSetStats output on Linux needs improvement Summary: Fixed the output of G1SummarizeRSetStats: too small datatype for the number of concurrently processed cards, added concurrent remembered set thread time retrieval for Linux and Windows (BSD uses os::elapsedTime() now), and other cleanup. The information presented during VM operation is now relative to the previous output, not always cumulative if G1SummarizeRSetStatsPeriod > 0. At VM exit, the code prints a cumulative summary. Reviewed-by: johnc, jwilhelm
author tschatzl
date Thu, 19 Dec 2013 09:21:19 +0100
parents e341c460dcbf
children 935f879e4eb0
comparison
equal deleted inserted replaced
16:54c46332dc2e 17:fee4595c1a9e
33 // Forward decl 33 // Forward decl
34 class ConcurrentG1RefineThread; 34 class ConcurrentG1RefineThread;
35 class G1CollectedHeap; 35 class G1CollectedHeap;
36 class G1HotCardCache; 36 class G1HotCardCache;
37 class G1RemSet; 37 class G1RemSet;
38 class DirtyCardQueue;
38 39
39 class ConcurrentG1Refine: public CHeapObj<mtGC> { 40 class ConcurrentG1Refine: public CHeapObj<mtGC> {
40 ConcurrentG1RefineThread** _threads; 41 ConcurrentG1RefineThread** _threads;
41 int _n_threads; 42 int _n_threads;
42 int _n_worker_threads; 43 int _n_worker_threads;
76 void init(); // Accomplish some initialization that has to wait. 77 void init(); // Accomplish some initialization that has to wait.
77 void stop(); 78 void stop();
78 79
79 void reinitialize_threads(); 80 void reinitialize_threads();
80 81
81 // Iterate over the conc refine threads 82 // Iterate over all concurrent refinement threads
82 void threads_do(ThreadClosure *tc); 83 void threads_do(ThreadClosure *tc);
84
85 // Iterate over all worker refinement threads
86 void worker_threads_do(ThreadClosure * tc);
87
88 // The RS sampling thread
89 ConcurrentG1RefineThread * sampling_thread() const;
83 90
84 static int thread_num(); 91 static int thread_num();
85 92
86 void print_worker_threads_on(outputStream* st) const; 93 void print_worker_threads_on(outputStream* st) const;
87 94