src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp

changeset 3120
af2ab04e0038
parent 3119
4f41766176cf
child 3175
4dfb2df418f2
equal deleted inserted replaced
3119:4f41766176cf 3120:af2ab04e0038
183 // if true, then it tries to dynamically adjust the length of the 183 // if true, then it tries to dynamically adjust the length of the
184 // young list 184 // young list
185 bool _adaptive_young_list_length; 185 bool _adaptive_young_list_length;
186 size_t _young_list_target_length; 186 size_t _young_list_target_length;
187 size_t _young_list_fixed_length; 187 size_t _young_list_fixed_length;
188 size_t _prev_eden_capacity; // used for logging
188 189
189 // The max number of regions we can extend the eden by while the GC 190 // The max number of regions we can extend the eden by while the GC
190 // locker is active. This should be >= _young_list_target_length; 191 // locker is active. This should be >= _young_list_target_length;
191 size_t _young_list_max_length; 192 size_t _young_list_max_length;
192 193
242 TruncatedSeq* _cost_per_byte_ms_during_cm_seq; 243 TruncatedSeq* _cost_per_byte_ms_during_cm_seq;
243 244
244 TruncatedSeq* _young_gc_eff_seq; 245 TruncatedSeq* _young_gc_eff_seq;
245 246
246 TruncatedSeq* _max_conc_overhead_seq; 247 TruncatedSeq* _max_conc_overhead_seq;
248
249 bool _using_new_ratio_calculations;
250 size_t _min_desired_young_length; // as set on the command line or default calculations
251 size_t _max_desired_young_length; // as set on the command line or default calculations
247 252
248 size_t _recorded_young_regions; 253 size_t _recorded_young_regions;
249 size_t _recorded_non_young_regions; 254 size_t _recorded_non_young_regions;
250 size_t _recorded_region_num; 255 size_t _recorded_region_num;
251 256
824 829
825 unsigned calc_gc_alloc_time_stamp() { 830 unsigned calc_gc_alloc_time_stamp() {
826 return _all_pause_times_ms->num() + 1; 831 return _all_pause_times_ms->num() + 1;
827 } 832 }
828 833
829 // Recalculate the reserve region number. This should be called 834 // This should be called after the heap is resized.
830 // after the heap is resized. 835 void record_new_heap_size(size_t new_number_of_regions);
831 void calculate_reserve(size_t all_regions);
832 836
833 protected: 837 protected:
834 838
835 // Count the number of bytes used in the CS. 839 // Count the number of bytes used in the CS.
836 void count_CS_bytes_used(); 840 void count_CS_bytes_used();
838 // Together these do the base cleanup-recording work. Subclasses might 842 // Together these do the base cleanup-recording work. Subclasses might
839 // want to put something between them. 843 // want to put something between them.
840 void record_concurrent_mark_cleanup_end_work1(size_t freed_bytes, 844 void record_concurrent_mark_cleanup_end_work1(size_t freed_bytes,
841 size_t max_live_bytes); 845 size_t max_live_bytes);
842 void record_concurrent_mark_cleanup_end_work2(); 846 void record_concurrent_mark_cleanup_end_work2();
847
848 void update_young_list_size_using_newratio(size_t number_of_heap_regions);
843 849
844 public: 850 public:
845 851
846 virtual void init(); 852 virtual void init();
847 853

mercurial