RFR: 8237649: ZGC: Improved NUMA support when using small pages
per.liden at oracle.com
Fri Jan 24 10:25:59 UTC 2020
On 1/24/20 10:52 AM, Stuart Monteith wrote:
> Hello Per,
> I notice you've left "UseNewCode" in size_t
> ZPhysicalMemoryBacking::commit(size_t offset, size_t length). I
> presume this is accidental. The rest looks ok to me.
Oops... good catch! I'll remove that. Thanks for reviewing!
> On Thu, 23 Jan 2020 at 10:02, Per Liden <per.liden at oracle.com> wrote:
>> The NUMA allocation support in ZGC works as expected only when using
>> -XX:+UseLargePages. The reason is that, on Linux, small pages are
>> allocated at commit/fallocate time and is controlled by the NUMA policy
>> of the current thread, while large pages are allocated at page fault
>> time and is controlled by the NUMA policy of the memory range. ZGC
>> currently only sets up the NUMA policy for the memory range, which has
>> no effect on small pages (since they are allocated by tmpfs rather than
>> being anonymous mappings).
>> We should fix this, so that the NUMA allocation support works equally
>> well for small pages.
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8237649
>> Webrev: http://cr.openjdk.java.net/~pliden/8237649/webrev.0
More information about the hotspot-gc-dev