hotspot/src/share/vm/gc/g1/g1RemSetSummary.hpp
changeset 46652 ab8716d193bb
parent 46614 ae1105fff9e4
equal deleted inserted replaced
46650:642365ee2b92 46652:ab8716d193bb
    34 
    34 
    35 class G1RemSetSummary VALUE_OBJ_CLASS_SPEC {
    35 class G1RemSetSummary VALUE_OBJ_CLASS_SPEC {
    36 private:
    36 private:
    37   friend class GetRSThreadVTimeClosure;
    37   friend class GetRSThreadVTimeClosure;
    38 
    38 
    39   G1RemSet* _remset;
    39   G1RemSet* _rem_set;
    40 
       
    41   G1RemSet* remset() const {
       
    42     return _remset;
       
    43   }
       
    44 
    40 
    45   size_t _num_conc_refined_cards;
    41   size_t _num_conc_refined_cards;
    46   size_t _num_processed_buf_mutator;
    42   size_t _num_processed_buf_mutator;
    47   size_t _num_processed_buf_rs_threads;
    43   size_t _num_processed_buf_rs_threads;
    48 
    44 
    49   size_t _num_coarsenings;
    45   size_t _num_coarsenings;
    50 
    46 
       
    47   size_t _num_vtimes;
    51   double* _rs_threads_vtimes;
    48   double* _rs_threads_vtimes;
    52   size_t _num_vtimes;
       
    53 
    49 
    54   double _sampling_thread_vtime;
    50   double _sampling_thread_vtime;
    55 
    51 
    56   void set_rs_thread_vtime(uint thread, double value);
    52   void set_rs_thread_vtime(uint thread, double value);
    57   void set_sampling_thread_vtime(double value) {
    53   void set_sampling_thread_vtime(double value) {
    61   // update this summary with current data from various places
    57   // update this summary with current data from various places
    62   void update();
    58   void update();
    63 
    59 
    64 public:
    60 public:
    65   G1RemSetSummary();
    61   G1RemSetSummary();
       
    62   G1RemSetSummary(G1RemSet* remset);
       
    63 
    66   ~G1RemSetSummary();
    64   ~G1RemSetSummary();
    67 
    65 
    68   // set the counters in this summary to the values of the others
    66   // set the counters in this summary to the values of the others
    69   void set(G1RemSetSummary* other);
    67   void set(G1RemSetSummary* other);
    70   // subtract all counters from the other summary, and set them in the current
    68   // subtract all counters from the other summary, and set them in the current
    71   void subtract_from(G1RemSetSummary* other);
    69   void subtract_from(G1RemSetSummary* other);
    72 
       
    73   // initialize and get the first sampling
       
    74   void initialize(G1RemSet* remset);
       
    75   bool const initialized() { return _rs_threads_vtimes != NULL; }
       
    76 
    70 
    77   void print_on(outputStream* out);
    71   void print_on(outputStream* out);
    78 
    72 
    79   double rs_thread_vtime(uint thread) const;
    73   double rs_thread_vtime(uint thread) const;
    80 
    74