RFR: 8012241 NMT huge memory footprint, it usually leads to OOME

Zhengyu Gu zhengyu.gu at oracle.com
Thu Jul 11 07:45:36 PDT 2013


Thanks Yumin.

-Zhengyu

On 7/11/2013 10:32 AM, Yumin Qi wrote:
> Looks good. Not a reviewer.
>
> Thanks
> Yumin
>
> On 7/11/2013 6:07 AM, Zhengyu Gu wrote:
>> The patch is a workaround that prevents JVM from OOM when running 
>> Kitchensink with NMT on some slow machines.
>>
>> Kitchensink normally runs with about 100 threads, peaks around 150 
>> threads. On some slow machines, NMT worker thread does not process 
>> raw NMT data quick enough, that causes huge backlogs, which consumes 
>> large amount of memory and can lead JVM OOM. By enforcing the new 
>> threshold, NMT will shutdown itself and free NMT memory.
>>
>> If native memory tracking is important to diagnostic memory issue, 
>> user can use -XX:-AutoShutdownNMT diagnostic flag to override above 
>> behavior. Turning off auto shutdown NMT flag, NMT also tries slow 
>> down malloc/free rate, to give NMT worker thread a chance to catch up.
>>
>>
>> JBS: https://jbs.oracle.com/bugs/browse/JDK-8012241
>> Exteneral bug: not available
>> Webrev: http://cr.openjdk.java.net/~zgu/8012241/webrev.00/ 
>> <http://cr.openjdk.java.net/%7Ezgu/8012241/webrev.00/>
>>
>>
>> Tests:
>>   Christian Tornqvist has verified on Windows and Solaris, that patch 
>> prevented JVM from OOM.
>>
>> Thanks,
>>
>> -Zhengyu
>



More information about the hotspot-runtime-dev mailing list