RFR: Explicit GC should actually uncommit the heap

Roman Kennke rkennke at redhat.com
Mon Aug 6 10:25:34 UTC 2018


Yup!

Cheers, Roman


Am 5. August 2018 23:08:08 MESZ schrieb Aleksey Shipilev <shade at redhat.com>:
>Made this simple mistake during refactoring. Explicit GC should enter
>this block to actually reach
>service_uncommit:
>
>diff -r c81906c39221
>src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp
>--- a/src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp      
>Fri Aug 03 19:45:29 2018 +0200
>+++ b/src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp      
>Sun Aug 05 23:07:36 2018 +0200
>@@ -218,17 +218,17 @@
>     double current = os::elapsedTime();
>
>-    if (ShenandoahUncommit && (current - last_shrink_time >
>shrink_period)) {
>+    if (ShenandoahUncommit && (explicit_gc_requested || (current -
>last_shrink_time >
>shrink_period))) {
>// Try to uncommit enough stale regions. Explicit GC tries to uncommit
>everything.
>       // Regular paths uncommit only occasionally.
>       double shrink_before = explicit_gc_requested ?
>                              current :
>                          current - (ShenandoahUncommitDelay / 1000.0);
>       service_uncommit(shrink_before);
>       last_shrink_time = current;
>     }
>
>
>Testing: tier3_gc_shenandoah, ad-hoc tests
>
>Thanks,
>-Aleksey

-- 
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.


More information about the shenandoah-dev mailing list