FRF: 8216975 Using ForceNUMA does not disable adaptive sizing with parallel gc

Ivan Walulya ivan.walulya at oracle.com
Wed Feb 19 15:44:31 UTC 2020


Thanks Kim, I agree it is might be redundant to ForceNUMA when Linux::libnuma_init fails. I will make the changes and make a new RFR. 

> On 19 Feb 2020, at 16:30, Kim Barrett <kim.barrett at oracle.com> wrote:
> 
>> On Feb 19, 2020, at 10:23 AM, Kim Barrett <kim.barrett at oracle.com> wrote:
>> 
>>> On Feb 19, 2020, at 3:35 AM, Ivan Walulya <ivan.walulya at oracle.com> wrote:
>>> 
>>> Hi all,
>>> 
>>> Please review a minor modification to disable adaptive sizing when ForceNuma is used with ParallelGC and UseLargePages on Linux OS.
>>> 
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8216975
>>> <https://bugs.openjdk.java.net/browse/JDK-8216975>Webrev: http://cr.openjdk.java.net/~iwalulya/8216975/00/ <http://cr.openjdk.java.net/~iwalulya/8216975/00/>
>>> Testing: Tier 1 - 3
>>> 
>>> 
>>> //Ivan
>> 
>> Setting UseNUMA true when Linux::libnuma_init returns false seems
>> unlikely to work.  The description of ForceNUMA is
>> 
>>   Force NUMA optimizations on single-node/UMA systems
>> 
>> which suggests how it's presently being used in numa_init is wrong.  I
>> think the current use should be removed and this conditional clause
>> 
>> 5129       // If there's only one node (they start from 0) or if the process
>> 5130       // is bound explicitly to a single node using membind, disable NUMA.
>> 5131       UseNUMA = false;
>> 
>> should instead use
>> 
>> UseNUMA = ForceNUMA
> 
> The Solaris use of ForceNUMA looks like it has a similar problem.
> 
> On Windows, UseNUMA seems to get forced off unless ForceNUMA, because
> NUMA support isn’t complete there.  Which is an entirely different meaning for
> ForceNUMA from its description.
> 
> That covers all the uses of ForceNUMA.
> 



More information about the hotspot-gc-dev mailing list