UseNuma disables itself for no adequately explained reason

122 views
Skip to first unread message

Ben Evans

unread,
Aug 27, 2019, 5:05:57 PM8/27/19
to mechanica...@googlegroups.com
Hi,

I've encountered an issue whereby, despite -XX:+UseNuma being
explicitly set on the command line, the final flags list that is seen
has it disabled. This is on OpenJDK 8u212.

Has anyone encountered a runtime configuration or sequence of flags
that will disable NUMA-awareness as a side-effect?

I'll see if I can pull the exact startup flags as given and share them.

Any pointers gratefully received.

Thanks,

Ben

Michael Barker

unread,
Aug 27, 2019, 5:19:12 PM8/27/19
to mechanica...@googlegroups.com
With JDK8 it seems to be impacted by whether the machine has multiple nodes (or not):

$ numactl -H
available: 2 nodes (0-1)
node 0 cpus: 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46
node 0 size: 63560 MB
node 0 free: 24246 MB
node 1 cpus: 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47
node 1 size: 64497 MB
node 1 free: 26020 MB
node distances:
node   0   1
  0:  10  21
  1:  21  10

$ java -XX:+PrintFlagsFinal -XX:+UseNUMA -version | grep UseNUMA
     bool UseNUMA                                  := true                                {product}
     bool UseNUMAInterleaving                      := true  

$ numactl -H
available: 1 nodes (0)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
node 0 size: 64342 MB
node 0 free: 25173 MB
node distances:
node   0
  0:  10

$ java -XX:+PrintFlagsFinal -XX:+UseNUMA -version | grep UseNUMA
     bool UseNUMA                                  := false                               {product}
     bool UseNUMAInterleaving                       = false                               {product}


--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-symp...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/mechanical-sympathy/CABKW8Rh1Lp7emTS3V5Fe7Btat6QtfTjxnJwuqoLRkx0eX98Bmg%40mail.gmail.com.

Jean-Philippe BEMPEL

unread,
Aug 27, 2019, 5:25:04 PM8/27/19
to mechanica...@googlegroups.com
Hi Ben, 

Parallel GC supports Numa, but I'm not sure about G1! 

Cheers 

Ben Evans

unread,
Aug 27, 2019, 6:17:37 PM8/27/19
to mechanica...@googlegroups.com
Thanks Jean-Phillipe.

JEP 345 - https://openjdk.java.net/jeps/345 has the answer. Currently
only Parallel supports NUMA, and looking at this app, it's using CMS.
Rather annoying that HotSpot doesn't warn about the combination, but
there we go!

Thanks,

Ben
> To view this discussion on the web, visit https://groups.google.com/d/msgid/mechanical-sympathy/CALrzOLv2otRxHQMauN6pitry7hq5x6PgY8mJ0m%2BhntGAjOHS1g%40mail.gmail.com.

Kirk Pepperdine

unread,
Aug 27, 2019, 10:57:51 PM8/27/19
to mechanica...@googlegroups.com
I believe it does but it’s all some what flaky FWIBT.



Reply all
Reply to author
Forward
0 new messages