RFR (S/M): 8136678: Implement adaptive sizing algorithm for IHOP

Thomas Schatzl thomas.schatzl at oracle.com
Fri Nov 6 10:42:31 UTC 2015


Hi all,

  after Sangheon's recent comment about potential division by zero, I
went through this change and also fixed this here.

Also, the output printed the wrong numbers (i.e.
_allocation_rate_s.last() vs. _allocation_rate_s.oldest()).

New webrevs:
http://cr.openjdk.java.net/~tschatzl/8136678/webrev.0_to_1/ (diff)
http://cr.openjdk.java.net/~tschatzl/8136678/webrev.1/ (full)

Thanks,
  Thomas

On Thu, 2015-11-05 at 10:54 +0100, Thomas Schatzl wrote:
> Hi all,
> 
>   can I have reviews for this change that adds a G1IHOPControl instance
> that adaptively adjusts the current IHOP based on allocation rate and
> marking cycle length?
> 
> Instead of statically setting the IHOP value (by the user at VM
> startup), this change adds adaptive IHOP control similar to CMS.
> 
> The main change is in G1IHOPControl lines 106-121, the rest is just
> setup changes and a unit test.
> 
> This feature, enabled by setting G1UseAdaptiveIHOP, is disabled by
> default for now. It is planned to be enabled by default in JDK-8136680,
> when more thorough testing has been conducted by SQE.
> 
> Generally it boosts G1 throughput significantly due to the low IHOP
> default value of 45, which with that change typically gets >70, if not
> up to 80-90, decreasing pause times significantly.
> 
> It depends on JDK-8136681 which is also out for review.
> 
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8136678
> Webrev:
> http://cr.openjdk.java.net/~tschatzl/8136678/webrev/
> Testing:
> jprt, vm.gc with G1UseAdaptiveIHOP disabled and enabled, unit test
> 
> Thanks,
>   Thomas
> 
> 




More information about the hotspot-gc-dev mailing list