comparison src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.hpp @ 13060:8f07aa079343

8016309: assert(eden_size > 0 && survivor_size > 0) failed: just checking 7057939: jmap shows MaxNewSize=4GB when Java is using parallel collector Summary: Major cleanup of the collectorpolicy classes Reviewed-by: tschatzl, jcoomes
author jwilhelm
date Fri, 01 Nov 2013 17:09:38 +0100
parents c49c7f835e8d
children 63a4eb8bcd23 a034dc5e910b
comparison
equal deleted inserted replaced
13059:46d7652b223c 13060:8f07aa079343
89 // These record the most recent collection times. They 89 // These record the most recent collection times. They
90 // are available as an alternative to using the averages 90 // are available as an alternative to using the averages
91 // for making ergonomic decisions. 91 // for making ergonomic decisions.
92 double _latest_major_mutator_interval_seconds; 92 double _latest_major_mutator_interval_seconds;
93 93
94 const size_t _intra_generation_alignment; // alignment for eden, survivors 94 const size_t _space_alignment; // alignment for eden, survivors
95 95
96 const double _gc_minor_pause_goal_sec; // goal for maximum minor gc pause 96 const double _gc_minor_pause_goal_sec; // goal for maximum minor gc pause
97 97
98 // The amount of live data in the heap at the last full GC, used 98 // The amount of live data in the heap at the last full GC, used
99 // as a baseline to help us determine when we need to perform the 99 // as a baseline to help us determine when we need to perform the
227 // 227 //
228 // NEEDS_CLEANUP this is a singleton object 228 // NEEDS_CLEANUP this is a singleton object
229 PSAdaptiveSizePolicy(size_t init_eden_size, 229 PSAdaptiveSizePolicy(size_t init_eden_size,
230 size_t init_promo_size, 230 size_t init_promo_size,
231 size_t init_survivor_size, 231 size_t init_survivor_size,
232 size_t intra_generation_alignment, 232 size_t space_alignment,
233 double gc_pause_goal_sec, 233 double gc_pause_goal_sec,
234 double gc_minor_pause_goal_sec, 234 double gc_minor_pause_goal_sec,
235 uint gc_time_ratio); 235 uint gc_time_ratio);
236 236
237 // Methods indicating events of interest to the adaptive size policy, 237 // Methods indicating events of interest to the adaptive size policy,
376 // system, with Eden zero sized. Even if the survivor space grows, from() 376 // system, with Eden zero sized. Even if the survivor space grows, from()
377 // might grow by moving the bottom boundary "down" -- so from space will 377 // might grow by moving the bottom boundary "down" -- so from space will
378 // remain almost full anyway (top() will be near end(), but there will be a 378 // remain almost full anyway (top() will be near end(), but there will be a
379 // large filler object at the bottom). 379 // large filler object at the bottom).
380 const size_t sz = gen_size / MinSurvivorRatio; 380 const size_t sz = gen_size / MinSurvivorRatio;
381 const size_t alignment = _intra_generation_alignment; 381 const size_t alignment = _space_alignment;
382 return sz > alignment ? align_size_down(sz, alignment) : alignment; 382 return sz > alignment ? align_size_down(sz, alignment) : alignment;
383 } 383 }
384 384
385 size_t live_at_last_full_gc() { 385 size_t live_at_last_full_gc() {
386 return _live_at_last_full_gc; 386 return _live_at_last_full_gc;