RFR: 8333925: Shenandoah: Heuristics should have an option to ignore abbreviated cycles

William Kemper wkemper at openjdk.org
Mon Jun 10 22:38:35 UTC 2024


After concurrent marking is complete, Shenandoah will skip the evacuation phase if a sufficient amount of garbage is found in regions that contain _no live objects_. These abbreviated cycles are much shorter than a cycle that performs evacuation and update references and tend to lower the average cycle time used by the heuristic to predict cycle times. This may cause the heuristic to wait too long to initiate a cycle and may lead to degenerated cycles. This change has the heuristic ignore abbreviated cycle times by default, with an option to have the heuristic count them as it does now.

-------------

Commit messages:
 - Adaptive heuristic should ignore abbreviated cycles

Changes: https://git.openjdk.org/jdk/pull/19640/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19640&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8333925
  Stats: 48 lines in 7 files changed: 26 ins; 2 del; 20 mod
  Patch: https://git.openjdk.org/jdk/pull/19640.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19640/head:pull/19640

PR: https://git.openjdk.org/jdk/pull/19640


More information about the shenandoah-dev mailing list