Turn on UseNUMA by default when prudent
Jesper Wilhelmsson
jesper.wilhelmsson at oracle.com
Tue May 29 19:56:35 UTC 2012
Hi Eric,
As long as this is based on actual data and not just a hunch, I personally
think it is a good idea. I don't know if we have any policies about platform
specific optimizations like this though.
I have some comments on the code layout and there are a few typos, but I guess
this is still a draft so I won't pick on that right now.
One thing I wonder though is in os_linux_x86.cpp:
if (VM_Version::cpu_family() == 0x15 || VM_Version::cpu_family() == 0x10) {
Is this the only way to identify the proper processor family? It doesn't seem
very future proof. How often would you have to change this code to keep it up
to date with new hardware?
Regards,
/Jesper
On 2012-05-29 20:54, Eric Caspole wrote:
> Hi Hotspot team,
>
> We sometimes notice on multi-socket systems large run to run variation in some
> benchmarks which seems to be attributed to bad/unlucky numa behavior. So we
> would like to add simple checks to turn on +UseNUMA for AMD platforms in the
> right situations; for example, max heap >= 4GB and we detect a multi-socket
> system. This should be a useful out-of-box improvement for most customers
> since UseParallelGC is the default.
>
> For benchmarks with a large heap, it helps give better out-of-box performance
> in many cases.
>
> Here is my first webrev to turn on NUMA for AMD systems when it is a numa
> system and the heap is set >= 4GB.
>
> http://cr.openjdk.java.net/~ecaspole/numa_default/
>
> Please let me know your thoughts on the merit of doing this and if it is
> worthwhile what should be the structure of the change in the shared/os/cpu
> specific code.
>
> Thanks,
> Eric
>
>
More information about the hotspot-gc-dev
mailing list