Re: [PATCH] shmem: avoid huge pages for small files

From: Michal Hocko
Date: Tue Oct 18 2016 - 10:20:20 EST


On Mon 17-10-16 17:55:40, Kirill A. Shutemov wrote:
> On Mon, Oct 17, 2016 at 04:12:46PM +0200, Michal Hocko wrote:
> > On Mon 17-10-16 15:30:21, Kirill A. Shutemov wrote:
[...]
> > > We add two handle to specify minimal file size for huge pages:
> > >
> > > - mount option 'huge_min_size';
> > >
> > > - sysfs file /sys/kernel/mm/transparent_hugepage/shmem_min_size for
> > > in-kernel tmpfs mountpoint;
> >
> > Could you explain who might like to change the minimum value (other than
> > disable the feautre for the mount point) and for what reason?
>
> Depending on how well CPU microarchitecture deals with huge pages, you
> might need to set it higher in order to balance out overhead with benefit
> of huge pages.

I am not sure this is a good argument. How do a user know and what will
help to make that decision? Why we cannot autotune that? In other words,
adding new knobs just in case turned out to be a bad idea in the past.

> In other case, if it's known in advance that specific mount would be
> populated with large files, you might want to set it to zero to get huge
> pages allocated from the beginning.

Cannot we use [mf]advise for that purpose?
--
Michal Hocko
SUSE Labs