JEP 163: Enable NUMA Mode by Default When Appropriate

Gustavo Romero gromero at linux.vnet.ibm.com
Mon Aug 27 15:55:50 UTC 2018


Hi Swati,

On 08/27/2018 09:10 AM, Swati Sharma wrote:
> I was going through this JEP 163: Enable NUMA Mode by Default When Appropriate(http://openjdk.java.net/jeps/163).
> 
> Can we make UseNUMA flag by default ON after detecting that if process runs on multiple NUMA nodes.So after that user don't need to specify the UseNUMA flag and JVM will auto detect and switch ON the flag.

The last time I tested SPECjvm with +UseNUMA I recall a slight better
performance on PPC64 and no regressions.

However I recall that IBM performance team reported at least one regression
when using +UseNUMA for a Apache Hadoop YARN workload.

They also reported that they were able to get better results when manually
tuning the JVM using a numactl approach, for instance.

At that occasion they recorded ~24% of numa misses when using +UseNUMA
whilst only ~4% when using their numactl approach.

That was on OpenJDK 8, but I understand based on changes from 8 to 12 that
it didn't change much. So I'm not convinced that the currently +UseNUMA
will help in the majority of cases and won't hurt badly some important
workload for us. That JEP was create a long time ago (2012) and was
updated on 2016, so _maybe_ community lost interest on that as the OS NUMA
balancers evolved over the years, helping most workloads / scenarios.

So in summing up, at least from a PPC64 perspective, I vouch for not
enabling -XX:+UseNUMA by default at the moment without further investigation.

I also see the JEP as "draft" so I CC:ed Jesper in case he has any insights
about the history and the current / future state of that JEP.

Anyway, others might want to comment on that, so let's wait for further
comments.

  
> Note : If we can then I can provide the implementaion for this JEP.

BTW, https://bugs.openjdk.java.net/browse/JDK-7179517 mentions a patch
contributed by Eric, probably the one discussed in this thread:

http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2012-July/004691.html

but it looks like that change never got pushed to 8.


Best regards,
Gustavo
  



More information about the hotspot-dev mailing list