< prev index next > src/hotspot/share/gc/shenandoah/shenandoahMetrics.cpp
Print this page
assert(free_actual != ShenandoahFreeSet::FreeSetUnderConstruction, "Avoid this race");
// ShenandoahCriticalFreeThreshold is expressed as a percentage. We multiple this percentage by 1/100th
// of the generation capacity to determine whether the available memory within the generation exceeds the
// critical threshold.
! size_t free_expected = (generation->max_capacity() / 100) * ShenandoahCriticalFreeThreshold;
bool prog_free = free_actual >= free_expected;
log_info(gc, ergo)("%s progress for free space: %zu%s, need %zu%s",
prog_free ? "Good" : "Bad",
byte_size_in_proper_unit(free_actual), proper_unit_for_byte_size(free_actual),
assert(free_actual != ShenandoahFreeSet::FreeSetUnderConstruction, "Avoid this race");
// ShenandoahCriticalFreeThreshold is expressed as a percentage. We multiple this percentage by 1/100th
// of the generation capacity to determine whether the available memory within the generation exceeds the
// critical threshold.
! size_t free_expected = (ShenandoahHeap::heap()->soft_max_capacity() / 100) * ShenandoahCriticalFreeThreshold;
bool prog_free = free_actual >= free_expected;
log_info(gc, ergo)("%s progress for free space: %zu%s, need %zu%s",
prog_free ? "Good" : "Bad",
byte_size_in_proper_unit(free_actual), proper_unit_for_byte_size(free_actual),
< prev index next >