8253232: G1Analytics::compute_pause_time_ratios() uses wrong pause times in calculation

Reviewed-by: tschatzl, kbarrett
This commit is contained in:
Ivan Walulya 2020-09-17 07:58:30 +00:00 committed by Thomas Schatzl
parent 53a4ef2670
commit 4ac6934965

View File

@ -151,7 +151,8 @@ void G1Analytics::report_alloc_rate_ms(double alloc_rate) {
void G1Analytics::compute_pause_time_ratios(double end_time_sec, double pause_time_ms) {
double long_interval_ms = (end_time_sec - oldest_known_gc_end_time_sec()) * 1000.0;
_long_term_pause_time_ratio = _recent_gc_times_ms->sum() / long_interval_ms;
double gc_pause_time_ms = _recent_gc_times_ms->sum() - _recent_gc_times_ms->oldest() + pause_time_ms;
_long_term_pause_time_ratio = gc_pause_time_ms / long_interval_ms;
_long_term_pause_time_ratio = clamp(_long_term_pause_time_ratio, 0.0, 1.0);
double short_interval_ms = (end_time_sec - most_recent_gc_end_time_sec()) * 1000.0;