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

Tim Bell tim.bell at oracle.com
Thu Mar 13 16:20:23 UTC 2014

Hi Erik:

> 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/

Thank you, Erik - this looks great and is a much better solution than my 
prototype.  Thanks for taking this over.   Approved.


More information about the build-dev mailing list