Java 64 bit consumes excessive native memory (c-heap) due to JIT Compilation

Ashish Saxena anantiitrke at gmail.com
Thu Aug 23 10:32:30 PDT 2012


These 64 MB blocks are committed and marked dirty and actually using
the RAM.. Hence the conern. As Andrew pointed, may be it is due to
some c-heap allocation specific to 64 bit systems.... but under what
circumstances do these blocks get allocated ? Which JVM Component /
Subcomponent is responsible for these extra memory blocks ?

Based on test and JVM options I mentioned above, it seems that these
gets allocated whenever JVM gets into JIT mode for the first time (may
be, may be not) ... but which JVM sub component is responsible for
this memory overhead ?

Thanks,
Ashish

On Wed, Aug 22, 2012 at 11:07 PM, Andrew Haley <aph at redhat.com> wrote:
> On 08/22/2012 05:36 PM, Vitaly Davidovich wrote:
>> Reserving a 64mb private heap sounds fine on 64bit, but it sounds like that
>> memory is being committed since RSS goes up?
>
> Maybe, maybe not.  We don't know that those 64M blocks are committed.  All I'm
> saying is that I have a suspicion that I know what they are.
>
> Andrew.
>


More information about the hotspot-compiler-dev mailing list