RFR(xxxs): 8245707: Increase Metaspace reserve alignment

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Tue Jun 2 15:52:28 UTC 2020


Yes, version 01 looks good.  How do we tell if 
Metaspace::reserve_alignment() is used instead of 
os::allocation_granularity() accidently?  I find the use of 
os::vm_page_size(), os::vm_allocation_granularity() and 
Metaspace::reserve_alignment() seem to appear almost arbitrary in 
places, for example in ReservedSpace::initialize().

Thanks,
Coleen

On 5/28/20 2:03 AM, Thomas Stüfe wrote:
> Thanks Ioi.
>
> On Thu, May 28, 2020 at 7:17 AM Ioi Lam <ioi.lam at oracle.com> wrote:
>
>> The new version looks fine to me.
>>
>> Thanks
>> - Ioi
>>
>> On 5/26/20 10:57 PM, Thomas Stüfe wrote:
>>
>> New version:
>>
>>
>> http://cr.openjdk.java.net/~stuefe/webrevs/8245707-increase-metaspace-reserve-alignment/webrev.01/webrev/
>>
>> Thanks, Thomas
>>
>> On Wed, May 27, 2020 at 7:42 AM Thomas Stüfe <thomas.stuefe at gmail.com>
>> wrote:
>>
>>> Hi Ioi,
>>>
>>> On Wed, May 27, 2020 at 7:04 AM Ioi Lam <ioi.lam at oracle.com> wrote:
>>>
>>>> Hi Thomas,
>>>>
>>>> If (UseLargePages && UseLargePagesInMetaspace) is true, then
>>>> _reserve_alignment will be 4*os::large_page_size(). Is this what you
>>>> want?
>>>>
>>>>
>>> No :) That is why I limited this to cases where the page size is 4K.
>>>
>>> However I see that on Windows this would still land us at 4*allocation
>>> granularity instead, so 256K. I'll change that.
>>>
>>>
>>>> Or, do you want to do the *4 only when large page is not used?
>>>>
>>>>
>>> Only if page size is 4K. The reason is that I want to trip over
>>> anyone asserting and calculating alignment (eg. CDS) but not trigger any
>>> tests which do test things like memory counters - on some of our platforms
>>> we have 64K and I don't want to adjust a bunch of tests.
>>>
>>>
>>>> Why did you choose *4? Would *2 also accomplish what you want?
>>>>
>>>>
>>> *2 would also be acceptable. I'll post an update.
>>>
>>> Thanks! ..Thomas
>>>
>>>
>>>> Thanks
>>>> - Ioi
>>>>
>>>> On 5/25/20 10:57 PM, Thomas Stüfe wrote:
>>>>> Hi all,
>>>>>
>>>>> may I have reviews for this tiny change:
>>>>>
>>>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8245707
>>>>> webrev:
>>>>>
>>>> http://cr.openjdk.java.net/~stuefe/webrevs/8245707-increase-metaspace-reserve-alignment/webrev.00/webrev/
>>>>> One of the motivations behind JDK-8243392 was to decouple CDS
>>>> reservation
>>>>> alignment from metaspace alignment and prevent misuse of metaspace
>>>> reserve
>>>>> alignment outside metaspace. This is needed since with the upcoming new
>>>>> metaspace (JDK-8221173) its reserve alignment requirement will be much
>>>>> higher than CDS alignment.
>>>>>
>>>>> For the time being, until JDK-8221173 finds its way into jdk mainline,
>>>> we
>>>>> should increase metaspace reserve alignment in jdk mainline to trigger
>>>> any
>>>>> remaining illegal uses of metaspace reserve alignments and to prevent
>>>> new
>>>>> ones from creeping in.
>>>>>
>>>>> All CI tests at SAP went through successfully, so at the moment we
>>>> seem to
>>>>> be clean.
>>>>>
>>>>> Thanks, Thomas
>>>>



More information about the hotspot-runtime-dev mailing list