RFR 8204552: NMT: Separate thread stack tracking from virtual memory tracking
Thomas Stüfe
thomas.stuefe at gmail.com
Mon Feb 25 17:21:36 UTC 2019
Short question, just to clarify things:
when you talk about "virtual memory thread stack" and "malloced thread
stack" you mean actually
a) a thread stack whose boundaries are page aligned and which can have
uncommitted portions and we are able to find that out (e.g. mincore)
b) a thread stack whose boundaries are not necessarily page aligned and
which either have no uncommitted portions or we are unable to find that out?
And the whole "malloc" terminology just stems from the fact that you use
the malloc tracking mechanics of NMT to track the latter, just because it
is a good fit?
..Thomas
On Mon, Feb 25, 2019 at 5:10 PM <zgu at redhat.com> wrote:
> Friendly ping!
>
> Thanks,
>
> -Zhengyu
>
> On Mon, 2019-02-18 at 14:57 -0500, zgu at redhat.com wrote:
> > On Mon, 2019-02-18 at 08:50 -0500, 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)
> >
> > Also passed JDK-submit tests.
> >
> > Thanks,
> >
> > -Zhengyu
> >
> > >
> > > Thanks,
> > >
> > > -Zhengyu
> > >
> > >
> > >
>
More information about the hotspot-runtime-dev
mailing list