< prev index next >
src/hotspot/share/gc/parallel/psOldGen.cpp
Print this page
rev 59215 : imported patch max_gen_size
*** 49,61 ****
void PSOldGen::initialize(ReservedSpace rs, size_t alignment,
const char* perf_data_name, int level) {
initialize_virtual_space(rs, alignment);
initialize_work(perf_data_name, level);
! // The old gen can grow to gen_size_limit(). _reserve reflects only
// the current maximum that can be committed.
! assert(_reserved.byte_size() <= gen_size_limit(), "Consistency check");
initialize_performance_counters(perf_data_name, level);
}
void PSOldGen::initialize_virtual_space(ReservedSpace rs, size_t alignment) {
--- 49,61 ----
void PSOldGen::initialize(ReservedSpace rs, size_t alignment,
const char* perf_data_name, int level) {
initialize_virtual_space(rs, alignment);
initialize_work(perf_data_name, level);
! // The old gen can grow to max_gen_size(). _reserve reflects only
// the current maximum that can be committed.
! assert(_reserved.byte_size() <= max_gen_size(), "Consistency check");
initialize_performance_counters(perf_data_name, level);
}
void PSOldGen::initialize_virtual_space(ReservedSpace rs, size_t alignment) {
*** 297,322 ****
const size_t alignment = virtual_space()->alignment();
const size_t size_before = virtual_space()->committed_size();
size_t new_size = used_in_bytes() + desired_free_space;
if (new_size < used_in_bytes()) {
// Overflowed the addition.
! new_size = gen_size_limit();
}
// Adjust according to our min and max
! new_size = clamp(new_size, min_gen_size(), gen_size_limit());
! assert(gen_size_limit() >= reserved().byte_size(), "max new size problem?");
new_size = align_up(new_size, alignment);
const size_t current_size = capacity_in_bytes();
log_trace(gc, ergo)("AdaptiveSizePolicy::old generation size: "
"desired free: " SIZE_FORMAT " used: " SIZE_FORMAT
" new size: " SIZE_FORMAT " current size " SIZE_FORMAT
" gen limits: " SIZE_FORMAT " / " SIZE_FORMAT,
desired_free_space, used_in_bytes(), new_size, current_size,
! gen_size_limit(), min_gen_size());
if (new_size == current_size) {
// No change requested
return;
}
--- 297,322 ----
const size_t alignment = virtual_space()->alignment();
const size_t size_before = virtual_space()->committed_size();
size_t new_size = used_in_bytes() + desired_free_space;
if (new_size < used_in_bytes()) {
// Overflowed the addition.
! new_size = max_gen_size();
}
// Adjust according to our min and max
! new_size = clamp(new_size, min_gen_size(), max_gen_size());
! assert(max_gen_size() >= reserved().byte_size(), "max new size problem?");
new_size = align_up(new_size, alignment);
const size_t current_size = capacity_in_bytes();
log_trace(gc, ergo)("AdaptiveSizePolicy::old generation size: "
"desired free: " SIZE_FORMAT " used: " SIZE_FORMAT
" new size: " SIZE_FORMAT " current size " SIZE_FORMAT
" gen limits: " SIZE_FORMAT " / " SIZE_FORMAT,
desired_free_space, used_in_bytes(), new_size, current_size,
! max_gen_size(), min_gen_size());
if (new_size == current_size) {
// No change requested
return;
}
*** 356,369 ****
assert(new_word_size == heap_word_size(object_space()->capacity_in_bytes()),
"Sanity");
}
- size_t PSOldGen::gen_size_limit() {
- return _max_gen_size;
- }
-
void PSOldGen::print() const { print_on(tty);}
void PSOldGen::print_on(outputStream* st) const {
st->print(" %-15s", name());
st->print(" total " SIZE_FORMAT "K, used " SIZE_FORMAT "K",
capacity_in_bytes()/K, used_in_bytes()/K);
--- 356,365 ----
< prev index next >