RFR: JDK-8010767: Build fails on OEL6 with 16 cores

Erik Joelsson erik.joelsson at oracle.com
Thu Mar 13 16:08:45 UTC 2014


Hello,

When building on large machines, the default Hotspot ergonomics are 
causing us trouble. Trying to spawn 30 or more jvm instances just does 
not work with default options. To tackle this, I've split the JAVA_FLAGS 
variable into one common JAVA_FLAGS and two separate JAVA_FLAGS_BIG and 
JAVA_FLAGS_SMALL. Big contains the memory settings that used to be in 
JAVA_FLAGS. Small sets SerialGC and a smaller heap. Small is then used 
for most of our smaller jvm instances in the build. (Building demos, 
tools and most notably when running native2ascii in images to generate 
_ja man pages).

On the particular machine this was last reported on (32 virtual cpus, 
256GB memory), the default setting of JOBS=16 (which is the current max 
automatic setting) would fail in native2ascii. With these changes I'm 
able to run the build with at least JOBS=100. There is currently no 
performance improvement going from 16 to 100 jobs, but it's good to know 
we no longer have issues with resources when scaling up.

Bug: https://bugs.openjdk.java.net/browse/JDK-8010767
Webrevs:
http://cr.openjdk.java.net/~erikj/8010767/webrev.root.01/
http://cr.openjdk.java.net/~erikj/8010767/webrev.jdk.01/

/Erik



More information about the build-dev mailing list