RFR(M) 8186834:Expanding old area without full GC in parallel GC

Michihiro Horie HORIE at jp.ibm.com
Tue Aug 29 09:43:24 UTC 2017


Hi David,

Thank you for letting me know about CSR. I will send a CSR for my change
and revisit here.

Best regards,
--
Michihiro,
IBM Research - Tokyo



From:	David Holmes <david.holmes at oracle.com>
To:	Michihiro Horie <HORIE at jp.ibm.com>,
            hotspot-dev at openjdk.java.net
Cc:	Hiroshi H Horii <HORII at jp.ibm.com>
Date:	2017/08/29 15:36
Subject:	Re: RFR(M) 8186834:Expanding old area without full GC in
            parallel GC



Hi Michihiro,

Please note that adding a new flag like this requires a Compatibility
and Specification Review request (CSR) [1] to be created and approved
before any code changes can be pushed. From the bug click "More" and
select "Create CSR".

Thanks,
David

[1]
https://urldefense.proofpoint.com/v2/url?u=https-3A__wiki.openjdk.java.net_display_csr_Main&d=DwICaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=ypbmlPeTxG9ZjfEnFV33xTm4VLn1G39Tfts8mIAPjyU&s=naIH7FCFgTcRxk9E5Sbtfc3z7Im3NbH18BmndxbTeRU&e=


On 29/08/2017 1:20 AM, Michihiro Horie wrote:
>
> Dear all,
>
> Would you please review the following change?
> bug:
https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8186834&d=DwICaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=ypbmlPeTxG9ZjfEnFV33xTm4VLn1G39Tfts8mIAPjyU&s=PpLj63Y3MSHrAW9Fjdog-5XLFtaTikMSenZIBIjJN3U&e=

> webrev:
https://urldefense.proofpoint.com/v2/url?u=http-3A__cr.openjdk.java.net_-7Emhorie_8186834_webrev.00_&d=DwICaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=oecsIpYF-cifqq2i1JEH0Q&m=ypbmlPeTxG9ZjfEnFV33xTm4VLn1G39Tfts8mIAPjyU&s=Wtj3oIAlrCMTEA__UeUm57fnM-_WrFOIIT4DQ1r6k2Y&e=

>
> In parallel GC, old area is expanded only after a full GC occurs.
> I am wondering if we could give an option to expand old area without full
> GC. So, I added an option
> UseAdaptiveGenerationSizePolicyBeforeMajorCollection.
>
> Following is a simple micro benchmark I used to see the benefit of this
> change.
> As a result, pause time of full GC reduced by 30%. Full GC count reduced
by
> 54%.
> Elapsed time reduced by 7%.
>
> import java.util.HashMap;
> import java.util.Map;
> public class HeapExpandTest {
>    static Map<Integer, byte[]> map = new HashMap<>();
>    public static void main(String[] args) throws Exception {
>      long start = System.currentTimeMillis();
>      for (int i = 0; i < 2200; ++i) {
>        map.put(i, new byte[1024*1024]); // 1MB
>      }
>      System.out.println("elapsed= " + (System.currentTimeMillis() -
start));
>    }
> }
>
> JVM options: -XX:+UseParallelGC -XX:+UseAdaptiveSizePolicy
> -XX:ParallelGCThreads=8 -Xms64m -Xmx3g
> -XX:+UseAdaptiveGenerationSizePolicyBeforeMajorCollection
>
>
> Best regards,
> --
> Michihiro,
> IBM Research - Tokyo
>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20170829/6c911f4f/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: graycol.gif
Type: image/gif
Size: 105 bytes
Desc: not available
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20170829/6c911f4f/graycol.gif>


More information about the hotspot-gc-dev mailing list