Numa Collectors in Hotspot
Hohensee, Paul
hohensee at amazon.com
Tue Sep 26 16:08:53 UTC 2017
For G1, see also http://openjdk.java.net/jeps/157.
At Amazon, we have use cases where we’d prefer to use G1 heaps that exceed the size of the memory attached to a single socket on NUMA systems. Without G1 recognition and use of UseNUMA, we’re forced to use multiple single-socket JVMs and consolidate their results, which is (a) more complex to implement, and (b) slower than we’d like. Enhancing G1 to recognize and use UseNUMA would be a win for us.
Thanks,
Paul
On 9/26/17, 8:48 AM, "Hohensee, Paul" <hohensee at amazon.com> wrote:
The Hotspot GC people may correct me wrt to the following.
See https://docs.oracle.com/javase/8/docs/technotes/guides/vm/performance-enhancements-7.html#numa for a discussion of UseNUMA for the Parallel collector in JDK8.
For all the other collectors except G1, UseNUMA will interleave each heap space (old gen, eden, survivor spaces) across the NUMA nodes, in an effort to average memory access latencies across the box. G1 doesn’t seem to know about NUMA.
A quick look at the source says that nothing has changed for JDKs 9 and 10.
Paul
On 9/25/17, 11:54 PM, "hotspot-gc-dev on behalf of Per Liden" <hotspot-gc-dev-bounces at openjdk.java.net on behalf of per.liden at oracle.com> wrote:
On 2017-09-26 05:43, Ionut wrote:
> Hello All,
>
> I was searching about a NUMA collector in Hotspot. Besides Parallel /
> Parallel Old I could not find any other Collector ( I am reffering here
> to CMS or G1).
> Could you please confirm/infirm that only Parallel/Parallel Old is
> allocating taking into account NUMA architecture?
That's correct.
cheers,
Per
More information about the hotspot-gc-dev
mailing list