remove INCLUDE_NMT?
Thomas Stüfe
thomas.stuefe at gmail.com
Thu Jan 20 08:13:38 UTC 2022
Hi David,
On Thu, Jan 20, 2022 at 8:22 AM David Holmes <david.holmes at oracle.com>
wrote:
> Hi Thomas,
>
> On 20/01/2022 4:58 pm, Thomas Stüfe wrote:
> > Hi,
> >
> > we have NMT, and NMT can be disabled at build time. It can also be
> disabled
> > at runtime. NMT disabling at build time causes INCLUDE_NMT to be false.
> >
> > So we have four scenarios:
> >
> > 1 nmt disabled at build (minimal VM)
> > 2 nmt enabled, off
> > 3 nmt enabled, summary mode
> > 4 nmt enabled, detail mode
> >
> > Removing (1) would simplify code and be one less configuration to test.
> Do
> > we really need the ability to exclude NMT from build? We have other
> > facilities which are not strictly necessary either but which we cannot
> > disable, e.g. UL. So it feels a bit arbitrary to take that much care for
> > NMT. Was there a reason for that?
>
> It comes from the Compact Profiles work in JDK 8 and the MinimalVM. I
> would not put UL in the same category as NMT as UL is far more generally
> useful even in a MinimalVM (though UL did not exist in 8).
>
>
Okay, fair point. I did not know about Compact Profiles.
> > It only matters for minimal builds, since I don't know any real VM out
> > there which does not come with NMT.
> >
> > NMT comes with a few static data, but those are only a few KB and we
> could
> > instead allocate them on demand. NMT is not difficult to port either,
> which
> > would be another reason to keep it optional.
> >
> > What do you think?
>
> I think you always need NMT present for your changes in JDK-8277822 to
> be valid! :)
>
Well, not necessarily. You lose fences in compact debug builds, but other
than that, it still works.
> I don't know who, if anyone, uses a minimal VM these days. If the NMT
> code doesn't add much to the disk or memory footprint then I think we
> could decide to make it non-optional.
>
Let's hear others. It is not that important. I was mainly eyeing the stub
interface to MemTracker for INCLUDE_NMT=false, because I routinely forget
about that one when changing NMT and then break the minimal build.
Thanks, Thomas
> Cheers,
> David
> -----
>
> > Thanks, Thomas
>
More information about the hotspot-runtime-dev
mailing list