Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1451213

Re: [PATCHv1, RFC 00/33] ext4: support of huge pages

From "Kirill A. Shutemov" <kirill@shutemov.name>
Newsgroups linux.kernel
Subject Re: [PATCHv1, RFC 00/33] ext4: support of huge pages
Date 2016-07-27 12:40 +0200
Message-ID <rZupP-6Bc-5@gated-at.bofh.it> (permalink)
References <rYYzD-3py-7@gated-at.bofh.it> <rZeuK-4Z7-13@gated-at.bofh.it> <rZg3v-616-23@gated-at.bofh.it> <rZtap-5SB-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, Jul 27, 2016 at 11:17:23AM +0200, Jan Kara wrote:
> On Tue 26-07-16 22:12:12, Kirill A. Shutemov wrote:
> > On Tue, Jul 26, 2016 at 01:29:38PM -0400, Theodore Ts'o wrote:
> > > On Tue, Jul 26, 2016 at 03:35:02AM +0300, Kirill A. Shutemov wrote:
> > > > Here's the first version of my patchset which intended to bring huge pages
> > > > to ext4. It's not yet ready for applying or serious use, but good enough
> > > > to show the approach.
> > > 
> > > Thanks.  The major issues I noticed when doing a quick scan of the
> > > patches you've already mentioned here.  I'll try to take a closer look
> > > in the next week or so when I have time.
> > 
> > Thanks.
> > 
> > > One random question --- in the huge=always approach, how much
> > > additional work would be needed to support file systems with a 64k
> > > block size on a system with 4k pages?
> > 
> > I think it's totally different story.
> > 
> > Here I have block size smaller than page size and it's not new to the
> > filesystem -- similar to 1k block size with 4k page size. So I was able to
> > re-use most of infrastructure to handle the situation.
> > 
> > Block size bigger than page size is backward task. I don't think I know
> > enough to understand how hard it would be. I guess not easy. :)
> 
> I think Ted wanted to ask: When you always have huge pages in page cache,
> block size of 64k is smaller than the page size of the page cache so there
> are chances it could work. Or is there anything which still exposes the
> fact that actual pages are 4k even in huge=always case?

As usual with THP, if we failed to allocate huge page, we fallback to 4k
pages. It's normal situation to have both huge and small pages in the same
radix tree.

I guess you can get work 64k blocks with 4k pages if you *always* allocate
order-4 pages for page cache of the filesystem. But I don't think it's
sustainable. It's significant pressure on buddy allocator and compaction.

I guess the right approach would a mechanism to scatter one block to
multiple order-0 pages. At least for fallback.

-- 
 Kirill A. Shutemov

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCHv1, RFC 00/33] ext4: support of huge pages "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 30/33] ext4: relax assert in ext4_da_page_release_reservation() "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 32/33] mm, fs, ext4: expand use of page_mapping() and page_to_pgoff() "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 28/33] ext4: handle huge pages in __ext4_block_zero_page_range() "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 06/33] radix-tree: Handle multiorder entries being deleted by replace_clear_tags "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 07/33] mm, shmem: swich huge tmpfs to multi-order radix-tree entries "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 18/33] HACK: block: bump BIO_MAX_PAGES "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  [PATCHv1, RFC 20/33] thp: introduce hpage_size() and hpage_mask() "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> - 2016-07-26 02:50 +0200
  Re: [PATCHv1, RFC 00/33] ext4: support of huge pages Theodore Ts'o <tytso@mit.edu> - 2016-07-26 19:40 +0200
    Re: [PATCHv1, RFC 00/33] ext4: support of huge pages "Kirill A. Shutemov" <kirill@shutemov.name> - 2016-07-26 21:20 +0200
      Re: [PATCHv1, RFC 00/33] ext4: support of huge pages Jan Kara <jack@suse.cz> - 2016-07-27 11:20 +0200
        Re: [PATCHv1, RFC 00/33] ext4: support of huge pages "Kirill A. Shutemov" <kirill@shutemov.name> - 2016-07-27 12:40 +0200
          Re: [PATCHv1, RFC 00/33] ext4: support of huge pages Andrea Arcangeli <aarcange@redhat.com> - 2016-07-27 16:10 +0200
  [PATCH] mm, hugetlb: switch hugetlbfs to multi-order radix-tree  entries Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> - 2016-08-10 03:00 +0200

csiph-web