Review Request: UseNUMAInterleaving
David Dabbs
dmdabbs at gmail.com
Tue May 17 08:16:00 PDT 2011
> -----Original Message-----
> From: Igor Veresov
> Sent: Monday, May 16, 2011 2:54 PM
> To: David Dabbs
> Cc: 'Deneau, Tom'; hotspot-compiler-dev at openjdk.java.net
> Subject: Re: Review Request: UseNUMAInterleaving
>
> On 5/16/11 11:21 AM, David Dabbs wrote:
>
> The 2.6.19 requirement is there because we need the sched_getcpu()
> syscall to determine on which CPU we're running.
>
Is kernel 2.6.19+ the only UseNUMA pre-req?
http://download.oracle.com/javase/7/docs/technotes/guides/vm/performance-enh
ancements-7.html#numa
This doc also specifies glibc 2.6.1. We could update our kernel, but a
glibc change wouldn't be possible.
Thanks,
David
> I guess it won't be hard to extend UseNUMAInterleaving to work on other
> OSes, including old Linuxes. You can, however, achieve the same effect
> by running the VM with "numactl -i all java <your-options>" or by
> turning interleaving on in BIOS in hardware.
>
> igor
>
> >
> >
> > Could this flag help Linux systems with kernel< 2.6.19, or is that
> the
> > minimum kernel needed for any JVM NUMA support?
> > Unfortunately, we run CentOS 5.5 (2.6.18)
> >
> > Linux node01.int 2.6.18-194.17.4.el5 #1 SMP Mon Oct 25 15:50:53 EDT
> 2010
> > x86_64 x86_64 x86_64 GNU/Linux
> >
> > and so -XX:+UseNUMA does not activate (at least not according to
> > PrintFlagsFinal).
> >
> >> From http://www.infoq.com/news/2010/01/java6u18
> > In the Java HotSpot VM, the NUMA-aware allocator has been implemented
> to
> > provide automatic memory placement optimisations for Java
> applications.
> > Typically, every processor in the system has a local memory that
> provides
> > low access latency and high bandwidth, and remote memory that is
> > considerably slower to access. The NUMA-aware allocator is
> implemented for
> > Solaris (>= 9u2) and Linux (kernel>= 2.6.19, glibc>= 2.6.1) operating
> > systems, and can be turned on for the Parallel Scavenger garbage
> collector
> > with the -XX:+UseNUMA flag. Parallel Scavenger remains the default
> for a
> > server-class machine and can also be turned on explicitly by
> specifying the
> > -XX:+UseParallelGC option. The impact of the change is significant:
> When
> > evaluated against the SPEC JBB 2005 benchmark on an 8 chip Opteron
> machine,
> > NUMA-aware systems gave about a 30% (for 32-bit) to 40% (for 64-bit)
> > increase in performance.
> >
> >
> >
> > Thanks,
> >
> > David
> >
> >
> >
> >
More information about the hotspot-compiler-dev
mailing list