Re: [HMM-v25 00/19] HMM (Heterogeneous Memory Management) v25

From: Andrew Morton
Date: Thu Aug 17 2017 - 18:16:31 EST


On Thu, 17 Aug 2017 14:59:20 -0700 Dan Williams <dan.j.williams@xxxxxxxxx> wrote:

> On Thu, Aug 17, 2017 at 2:55 PM, Jerome Glisse <jglisse@xxxxxxxxxx> wrote:
> > On Thu, Aug 17, 2017 at 02:39:16PM -0700, Andrew Morton wrote:
> >> On Wed, 16 Aug 2017 20:05:29 -0400 J__r__me Glisse <jglisse@xxxxxxxxxx> wrote:
> >>
> >> > Heterogeneous Memory Management (HMM) (description and justification)
> >>
> >> The patchset adds 55 kbytes to x86_64's mm/*.o and there doesn't appear
> >> to be any way of avoiding this overhead, or of avoiding whatever
> >> runtime overheads are added.
> >
> > HMM have already been integrated in couple of Red Hat kernel and AFAIK there
> > is no runtime performance issue reported. Thought the RHEL version does not
> > use static key as Dan asked.
> >
> >>
> >> It also adds 18k to arm's mm/*.o and arm doesn't support HMM at all.
> >>
> >> So that's all quite a lot of bloat for systems which get no benefit from
> >> the patchset. What can we do to improve this situation (a lot)?
> >
> > I will look into why object file grow so much on arm. My guess is that the
> > new migrate code is the bulk of that. I can hide the new page migration code
> > behind a kernel configuration flag.
>
> Shouldn't we completely disable all of it unless there is a driver in
> the kernel that selects it?

That would be typical (and nice).

I'm not sure that Red Hat's decision is a broad enough guide here.
Someone who is using Linux to make a cash register or a thermostat
faces different tradeoffs...