RFR (L): 8058354: SPECjvm2008-Derby -2.7% performance regression on Solaris-X64 starting with 9-b29
Thomas Schatzl
thomas.schatzl at oracle.com
Thu Mar 26 15:11:28 UTC 2015
Hi again,
On Thu, 2015-03-26 at 09:47 +0100, Thomas Schatzl wrote:
> Hi Jon,
>
> On Wed, 2015-03-25 at 20:47 -0700, Jon Masamitsu wrote:
> > Thomas,
> >
> > Haven't gotten very far but let me send you one question.
> >
> > http://cr.openjdk.java.net/~tschatzl/8058354/webrev.2_to_3/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp.frames.html
> >
> > > 157 void G1PageBasedVirtualSpace::commit_tail() {
> > > 158 char* const aligned_end_address = (char*)align_ptr_down(_high_boundary, _page_size);
> > > 159 size_t const tail_size = pointer_delta(_high_boundary, aligned_end_address, sizeof(char));
> >
> > Should there be a check that tail_size is not 0 before attempting to
> > commit it?
>
> commit_tail() can only be called if is_last_page_partial() is true,
> i.e. tail_size > 0. I can add an assert for that.
Here's a change with that assert added.
Full webrev:
http://cr.openjdk.java.net/~tschatzl/8058354/webrev.4/
Diff:
http://cr.openjdk.java.net/~tschatzl/8058354/webrev.3_to_4/
top-level changes:
http://cr.openjdk.java.net/~tschatzl/8058354/webrev.hs-gc.1/ (there were
no changes in it for months, just for completeness)
Testing: another jprt round
Thanks a lot,
Thomas
More information about the hotspot-gc-dev
mailing list