Skip to content

Commit 4ac6934

Browse files
Ivan WalulyaThomas Schatzl
authored andcommitted
8253232: G1Analytics::compute_pause_time_ratios() uses wrong pause times in calculation
Reviewed-by: tschatzl, kbarrett
1 parent 53a4ef2 commit 4ac6934

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/hotspot/share/gc/g1/g1Analytics.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,8 @@ void G1Analytics::report_alloc_rate_ms(double alloc_rate) {
151151

152152
void G1Analytics::compute_pause_time_ratios(double end_time_sec, double pause_time_ms) {
153153
double long_interval_ms = (end_time_sec - oldest_known_gc_end_time_sec()) * 1000.0;
154-
_long_term_pause_time_ratio = _recent_gc_times_ms->sum() / long_interval_ms;
154+
double gc_pause_time_ms = _recent_gc_times_ms->sum() - _recent_gc_times_ms->oldest() + pause_time_ms;
155+
_long_term_pause_time_ratio = gc_pause_time_ms / long_interval_ms;
155156
_long_term_pause_time_ratio = clamp(_long_term_pause_time_ratio, 0.0, 1.0);
156157

157158
double short_interval_ms = (end_time_sec - most_recent_gc_end_time_sec()) * 1000.0;

0 commit comments

Comments
 (0)