IBM Support

IV37797: NATIVE OOMS ON 64-BIT JVMS ON NON-SYSTEM Z PLATFORMS USING -XCOMPRESSEDREFS CAUSED BY JAVA HEAP ALLOCATED IN 32-BIT SPACE

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Error Message: An Out of Memory error occurs.
    .
    Stack Trace: N/A
    .
    

Local fix

  • Two possible workarounds exist:
    	1) Experimenting with different Xmx heap sizes relocates the
    heap above the 4 GB memory mark.
    	2) Option -Xgc:preferredHeapBase can be used to specify the
    base memory address for the heap.  For example
    -Xgc:preferredHeapBase=0x100000000.
    

Problem summary

  • This problem can occur on any 64 bit JVM running in the
    compressed reference mode.
    For performance reasons, a compressed references JVM will make
    some native memory requests in the 0-4GB range only. When this
    range is exhausted a native OutOfMemoryError will be thrown.
     Under some circumstances the Java Heap can be allocated in the
    0-4GB range, reducing the amount of memory available for these
    allocations and presenting the symptom earlier than necessary.
    

Problem conclusion

  • This defect will be fixed in:
    6.0.1 SR6
    7.0.0 SR5
    .
    The JVM has been updated so that the heap allocation is fixed to
    allocate memory above the 4G bar for compressed reference JVM
    for all platform except IBM System z, if and only if the entire
    heap will not fit below 4 Gb. In cases where the heap does fit
    under the 4Gb bar, the heap will be allocated there, and not
    above 4Gb. This is for performance reasons (if the heap fits
    below 4Gb, address shifting is not required, improving
    performance). The determination of whether or not the heap will
    fit below 4Gb is made by the OS. This APAR is not applicable to
    IBM System z  platforms (i.e. z/OS and z/Linux) because on these
    platforms, there is an additional performance penalty
    associated with higher shift values.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV37797

  • Reported component name

    J9 COMMON CODE

  • Reported component ID

    620700127

  • Reported release

    260

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2013-03-11

  • Closed date

    2013-03-11

  • Last modified date

    2017-08-29

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    J9 COMMON CODE

  • Fixed component ID

    620700127

Applicable component levels

  • R260 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Virtual Machine

Software version: 260

Reference #: IV37797

Modified date: 29 August 2017