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