[8u60] Backport for 8058354: SPECjvm2008-Derby -2.7% performance regression on Solaris-X64 starting with 9-b2

Jon Masamitsu jon.masamitsu at oracle.com
Mon Apr 13 17:39:33 UTC 2015


Thomas,

I didn't find a definition of G1PageBasedVirtualSpace::is_area_committed()
in the new version of the code?   Did I miss it.

Otherwise, looks good.

Jon


On 4/13/2015 2:59 AM, Thomas Schatzl wrote:
> Hi all,
>
>    can I have reviews for the backport of "8058354: SPECjvm2008-Derby
> -2.7% performance regression on Solaris-X64 starting with 9-b29" for
> 8u60?
>
> It did only apply with some changes, so I need re-reviews. There are two
> issues:
>
> - jdk9 removed one parameter of ReservedSpace::initialize(), namely the
> "noaccess_prefix" one. Jdk8 still has that one, so there has been a
> merge error in ReservedSpace::ReservedSpace(size_t, bool).
>
> - g1PageBasedVirtualSpace.cpp uses the vmassert() macro not backported.
> I had to change everything to use the regular assert macro.
>
> - in G1PageBasedVirtualSpace::commit() the call to os::pretouch_memory()
> has been different to jdk9 because the related change had been
> backported out of order with another change.
>
> I.e. the original code right now in 8u uses
>
>   161   if (AlwaysPreTouch) {
>   162     os::pretouch_memory(page_start(start), page_start(start) + byte_size_for_pages(size_in_pages));
>   163   }
>
> In JDK9 the code has been
>
> 214  if (AlwaysPreTouch) {
> 215    os::pretouch_memory(page_start(start), page_start(end));
> 216  }
>
> With this change the code in 8u60 and 9 will be aligned again.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8058354
> Full webrev:
> http://cr.openjdk.java.net/~tschatzl/8058354-8u60/webrev.8u60/
> Diff webrev (with the merge changes):
> http://cr.openjdk.java.net/~tschatzl/8058354-8u60/webrev.8u60-fix/
>
> Testing:
> jprt
>
> This change is based on the backport for JDK-8066875 that has
> been reviewed just recently.
>
> With this change (and the follow-up bugfix 8077255 that applies
> cleanly) all backports in this long dependency chain are done. Thanks
> everyone for participating.
>
> Thanks,
>    Thomas
>



More information about the hotspot-gc-dev mailing list