[PATCH] Exploit Empty Regions in Young Gen to Enhance PS Full GC Performance

Haoyu Li leihouyju at gmail.com
Thu Jan 24 08:58:37 UTC 2019


Hi Kim,

I have ported my patch to OpenJDK 13 according to your instructions in your
last mail, and the patch is attached in this mail. The patch does not
change much since PSGC is indeed pretty stable.

Also, I evaluate the correctness and performance of PS full GC with
benchmarks from DaCapo, SPECjvm2008, and JOlden suits on a machine with
dual Intel Xeon E5-2618L v3 CPUs(16 physical cores), 64G DRAM and linux
kernel 4.17. The evaluation result, indicating 1.9X GC throughput
improvement on average, is attached, too.

However, I have no idea how to further test this patch for both correctness
and performance. Can I please get any guidance from you or some sponsor?

Best Regrads,
Haoyu Li,
Institute of Parallel and Distributed Systems(IPADS),
School of Software,
Shanghai Jiao Tong University


Kim Barrett <kim.barrett at oracle.com> 于2019年1月16日周三 上午12:33写道:

> > On Dec 23, 2018, at 12:38 PM, Haoyu Li <leihouyju at gmail.com> wrote:
> >
> > Hi all,
> > I have developed a patch to enhance the full GC performance of Parallel
> Scavenge on OpenJDK 11, may I have some reviews? The patch is described as
> follows and attached in this mail.
> >
> > […]
> >
> > The patch and evaluation result are attached.
> >
> > Best Regrads,
> > Haoyu Li,
> > Institute of Parallel and Distributed Systems(IPADS),
> > School of Software,
> > Shanghai Jiao Tong University
>
> Thanks for offering to contribute to the OpenJDK project.  Sorry it's
> taken a while to respond, but holidays &etc intervened.
>
> The idea of the patch sounds interesting.  However, before we can
> proceed, there may be some process issues that need to be addressed.
>
> The first, and most critical: are you covered by an Oracle Contributor
> Agreement (either individually or via an employer who is sponsoring
> this work)?  If not, that needs to be dealt with first.  For details,
> see https://openjdk.java.net/contribute/.
>
> Another is that current development is going into the jdk repo
> http://hg.openjdk.java.net/jdk/jdk/ (which is currently targeting JDK
> 13), while your email suggests your patch is against the OpenJDK 11
> release.  This kind of change should be made in the current line of
> development, and then perhaps considered for backporting.  So the
> patch will likely need to be updated.  (It might not require all that
> much modification though; ParallelGC has been pretty stable for a
> while.)
>
> Since you don't appear to be an OpenJDK committer/author, you'll need
> a sponsor to help with some of the other pieces of the puzzle:
>
> Each change requires an associated bug ID, from the OpenJDK bug
> database.  Without a username there (which requires OpenJDK author
> status), your sponsor can create the CR there.
>
> Also, changes of more than some trivial extent generally get packaged
> for review using the webrev tool, and published on cr.openjdk.java.net.
> https://openjdk.java.net/guide/codeReview.html
> Your sponsor can help you with that.
>
> Your change may need additional testing (both for correctness and
> performance).  For example, you don't mention what platforms you've
> tested on, there are a lot of functional tests for OpenJDK, and there
> are probably other performance tests that should be applied to a
> change like this.
>
> For a change like this, your sponsor should be someone currently
> involved in OpenJDK GC development, preferably in an area related to
> the patch.  It's not required that they be an Oracle employee, though
> for some things that might help.  I can help you find someone.  (It
> might be me, but I don't want to commit to that today.)
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20190124/c37f9303/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: shadow-region.patch
Type: text/x-patch
Size: 24280 bytes
Desc: not available
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20190124/c37f9303/shadow-region-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: performance.png
Type: image/png
Size: 22874 bytes
Desc: not available
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20190124/c37f9303/performance-0001.png>


More information about the hotspot-gc-dev mailing list