RFR: Compact heuristics should not shortcut on immediate garbage, but aggressively compact

Aleksey Shipilev shade at redhat.com
Wed Mar 28 17:59:40 UTC 2018


Spotted a little inefficiency in our "compact" heuristics:

diff -r cb0e69eec083 src/hotspot/share/gc/shenandoah/shenandoahCollectorPolicy.cpp
--- a/src/hotspot/share/gc/shenandoah/shenandoahCollectorPolicy.cpp	Wed Mar 28 19:54:45 2018 +0200
+++ b/src/hotspot/share/gc/shenandoah/shenandoahCollectorPolicy.cpp	Wed Mar 28 19:58:52 2018 +0200
@@ -600,6 +600,7 @@
   ShenandoahCompactHeuristics() : ShenandoahHeuristics() {
     SHENANDOAH_ERGO_ENABLE_FLAG(ShenandoahUncommit);
     SHENANDOAH_ERGO_OVERRIDE_DEFAULT(ShenandoahAllocationThreshold,  10);
+    SHENANDOAH_ERGO_OVERRIDE_DEFAULT(ShenandoahImmediateThreshold,   100);
     SHENANDOAH_ERGO_OVERRIDE_DEFAULT(ShenandoahUncommitDelay,        5000);
     SHENANDOAH_ERGO_OVERRIDE_DEFAULT(ShenandoahGuaranteedGCInterval, 30000);
     SHENANDOAH_ERGO_OVERRIDE_DEFAULT(ShenandoahGarbageThreshold,     20);

Testing: hotspot_gc_shenandoah

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list