RFR 8204552: NMT: Separate thread stack tracking from virtual memory tracking

Zhengyu Gu zgu at redhat.com
Tue Mar 26 18:21:27 UTC 2019

Thanks, Yumin.


On 3/26/19 2:19 PM, yumin qi wrote:
> Hi,  Zhengyu
>    Good to see tracking thread stack separated from tracking virtual 
> memory. It looks good to me.
> Thanks
> Yumin
> On Mon, Feb 18, 2019 at 5:50 AM <zgu at redhat.com <mailto:zgu at redhat.com>> 
> wrote:
>     NMT tracks thread stacks as virtual memory since day one, as most of
>     platofrms are using virtual memory to back thread stacks. However,
>     there are exceptions, e.g. AIX. The matter of fact, POSIX standard does
>     not dictate what kind of memory or even alignment requirement for
>     thread stacks.
>     This patch separates thread stack tracking from virtual memory
>     tracking. It delegates to virtual memory tracker if thread stack is
>     backed by virtual memory.
>     For thread stacks that are backed by malloc'd memory, it can not simply
>     utilize malloc tracker for detail tracking, since it can not install
>     tracking header in place. Therefore, it has to track those memory
>     separately, then piggybacks to existing malloc tracking infrastructure
>     during snapshot, for baselining and reporting.
>     Thanks for Goetz Lindenmaier and Thomas Stüfe's help to run the patch
>     through SAP buidling and testing infrastructure, that is especially
>     helpful for verifying the fix for AIX.
>     Bug: https://bugs.openjdk.java.net/browse/JDK-8204552
>     Webrev: http://cr.openjdk.java.net/~zgu/JDK-8204552/webrev.01/
>     Test:
>        hotspot_nmt on Linux x64 (fastdebug and release)
>     Thanks,
>     -Zhengyu

More information about the hotspot-runtime-dev mailing list