linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Gregory Price <gourry@gourry.net>
To: "Huang, Ying" <ying.huang@linux.alibaba.com>
Cc: linux-mm@kvack.org, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org, kernel-team@meta.com,
	nehagholkar@meta.com, abhishekd@meta.com, david@redhat.com,
	nphamcs@gmail.com, akpm@linux-foundation.org, hannes@cmpxchg.org,
	kbusch@meta.com, feng.tang@intel.com, donettom@linux.ibm.com
Subject: Re: [RFC v3 PATCH 0/5] Promotion of Unmapped Page Cache Folios.
Date: Thu, 23 Jan 2025 09:55:58 -0500	[thread overview]
Message-ID: <Z5JYfvMwkM9ATpSp@gourry-fedora-PF4VCD3F> (raw)
In-Reply-To: <87y0z2jiom.fsf@DESKTOP-5N7EMDA>

On Thu, Jan 23, 2025 at 11:46:49AM +0800, Huang, Ying wrote:
> Gregory Price <gourry@gourry.net> writes:
> > Test 2 shows overhead of TPP on + pagecache promo off
> > Test 3 shows overhead of TPP+Promo on, but all the memory is on top tier
> >
> > This shows the check as to whether the folio is in the top tier is
> > actually somewhat expensive (~5% compared to baseline, ~2.7% compared to
> > TPP-on Promo-off).
> 
> This is unexpected.  Can we try to optimize it?  For example, via using
> a nodemask?  node_is_toptier() is used in the mapped pages promotion
> too (1 vs. 2 above).  I guess that the optimization can reduce the
> overhead there with measurable difference too.
>

Agreed it surprised me a bit as well. But more surprising is the fact
that test 2 was also 2-3% slower given that it's a simple boolean check
against whether tiering is turned on.

I suppose that since the test is blowing up the cache/tlb by design,
multiple additional cache/tlb misses could cause a non-trivial slowdown,
but it is certainly a small puzzle I haven't dug into yet.

~Gregory


      reply	other threads:[~2025-01-23 14:56 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-07  0:03 Gregory Price
2025-01-07  0:03 ` [PATCH v3 1/6] migrate: Allow migrate_misplaced_folio_prepare() to accept a NULL VMA Gregory Price
2025-01-07  0:03 ` [PATCH v3 2/6] memory: move conditionally defined enums use inside ifdef tags Gregory Price
2025-01-21  4:33   ` Bharata B Rao
2025-01-22 18:01     ` Gregory Price
2025-01-23  3:07       ` Bharata B Rao
2025-01-07  0:03 ` [PATCH v3 3/6] memory: allow non-fault migration in numa_migrate_check path Gregory Price
2025-01-07  0:03 ` [PATCH v3 4/6] vmstat: add page-cache numa hints Gregory Price
2025-01-07  0:03 ` [PATCH v3 5/6] migrate: implement migrate_misplaced_folio_batch Gregory Price
2025-01-07  0:03 ` [PATCH v3 6/6] migrate,sysfs: add pagecache promotion Gregory Price
2025-01-22 11:16 ` [RFC v3 PATCH 0/5] Promotion of Unmapped Page Cache Folios Huang, Ying
2025-01-22 16:48   ` Gregory Price
2025-01-23  3:46     ` Huang, Ying
2025-01-23 14:55       ` Gregory Price [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z5JYfvMwkM9ATpSp@gourry-fedora-PF4VCD3F \
    --to=gourry@gourry.net \
    --cc=abhishekd@meta.com \
    --cc=akpm@linux-foundation.org \
    --cc=david@redhat.com \
    --cc=donettom@linux.ibm.com \
    --cc=feng.tang@intel.com \
    --cc=hannes@cmpxchg.org \
    --cc=kbusch@meta.com \
    --cc=kernel-team@meta.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=nehagholkar@meta.com \
    --cc=nphamcs@gmail.com \
    --cc=ying.huang@linux.alibaba.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox