RFR: JDK-8010767: Build fails on OEL6 with 16 cores
erik.joelsson at oracle.com
Fri Mar 14 11:06:39 UTC 2014
Thanks for the comments, here is a new webrev for the root repo:
On 2014-03-14 11:44, Magnus Ihse Bursie wrote:
> On 2014-03-13 17:08, Erik Joelsson wrote:
>> 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
> Looks good!
> However the variable BOOT_JDK_JVMARGS is not used anywhere any longer,
> so I'd appreciate if you could remove it completely.
> Also, you're outputting this:
> AC_MSG_CHECKING([flags for boot jdk java command for big
> configurations] )
> It's great that you provide user feedback! However, we use the word
> "configuration" for a very specific meaning and I think it's better to
> rephrase this, maybe something like:
> AC_MSG_CHECKING([flags for java command for big workloads])
> (also note the absence of space before the end paranthesis). And
> correspondingly for small.
More information about the build-dev