Review Request: UseNUMAInterleaving
tom.deneau at amd.com
Tue Aug 16 13:14:00 PDT 2011
I am back from vacation, starting to address your comments...
Regarding your comment #1 below.
You mention "future planned NUMA-aware implementations of GCs". How
do these future planned NUMA-aware implementations of GCs differ from
today's NUMA-aware GCs? My understanding of the current GCs use of
NUMA is that they support numa_global (interleaved) and numa_local
(memory pinned to one numa node).
In the currently released JVMs on Windows OSes, neither numa_local nor
numa_global is implemented. The implementation I proposed in the
patch maps both numa_local and numa_global requests to numa_global (on
Windows). The reasons for this were:
* it was very difficult (if not impossible) to implement the JVM's
current numa_local semantics on Windows
* in the benchmarks we measured, the extra performance that was
left on the table by doing only numa_global and not doing
numa_local was only a few percent.
Are you saying that in the future numa_local will be supported on
Windows, and that even then it might still be advantageous to have a
flag (UseNUMAInterleaving) which instead maps all the regions to
numa_global? Should this flag be available on all OSes?
> -----Original Message-----
> From: Igor Veresov [mailto:igor.veresov at oracle.com]
> Sent: Monday, August 08, 2011 1:43 PM
> To: hotspot-gc-dev at openjdk.java.net; Deneau, Tom
> Subject: Re: Review Request: UseNUMAInterleaving
> Hi, Tom!
> Sorry it took me so long to get to that.
> 1. I don't think the new version of flag usage is prudent. The reason I
> proposed to introduce a new flag for interleaving is that it would make
> life easier in the future when the proper NUMA-aware implementation of
> GCs are added (G1 would be the most probable candidate). I would propose
> to still have UseNUMAInterleaving flag.
> The usage would be as follows:
> - If UseNUMA is specified on Windows that would turn UseNUMAInterleaving
> (for the time being, and that behavior would change in the future).
> - If UseNUMAInterleaving is specified on the command line, you just do
> the interleaving. If you don't add this flag now, you'll have to do that
> anyway as soon as NUMA-aware GCs start supporting windows.
> On 5/26/11 4:37 PM, Deneau, Tom wrote:
> > I have incorporated the change suggested by Paul Hohensee to just use
> the existing UseNUMA flag rather than introduce a new flag. Please let me
> know when you think this will be able to be checked in...
> > The new webrev is at
> > http://cr.openjdk.java.net/~tdeneau/UseNUMAInterleaving/webrev.02/
> > -- Tom Deneau, AMD
More information about the hotspot-gc-dev