[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bcd887c8-9830-42ed-b43a-2fdaa11dc837@redhat.com>
Date: Fri, 19 Apr 2024 11:14:18 +0200
From: David Hildenbrand <david@...hat.com>
To: "Yin, Fengwei" <fengwei.yin@...el.com>, linux-kernel@...r.kernel.org
Cc: linux-mm@...ck.org, linux-doc@...r.kernel.org, cgroups@...r.kernel.org,
linux-sh@...r.kernel.org, linux-trace-kernel@...r.kernel.org,
linux-fsdevel@...r.kernel.org, Andrew Morton <akpm@...ux-foundation.org>,
"Matthew Wilcox (Oracle)" <willy@...radead.org>, Peter Xu
<peterx@...hat.com>, Ryan Roberts <ryan.roberts@....com>,
Yang Shi <shy828301@...il.com>, Zi Yan <ziy@...dia.com>,
Jonathan Corbet <corbet@....net>, Hugh Dickins <hughd@...gle.com>,
Yoshinori Sato <ysato@...rs.sourceforge.jp>, Rich Felker <dalias@...c.org>,
John Paul Adrian Glaubitz <glaubitz@...sik.fu-berlin.de>,
Chris Zankel <chris@...kel.net>, Max Filippov <jcmvbkbc@...il.com>,
Muchun Song <muchun.song@...ux.dev>, Miaohe Lin <linmiaohe@...wei.com>,
Naoya Horiguchi <naoya.horiguchi@....com>,
Richard Chang <richardycc@...gle.com>
Subject: Re: [PATCH v1 02/18] mm/rmap: always inline anon/file rmap
duplication of a single PTE
On 19.04.24 04:25, Yin, Fengwei wrote:
>
>
> On 4/10/2024 3:22 AM, David Hildenbrand wrote:
>> As we grow the code, the compiler might make stupid decisions and
>> unnecessarily degrade fork() performance. Let's make sure to always inline
>> functions that operate on a single PTE so the compiler will always
>> optimize out the loop and avoid a function call.
>>
>> This is a preparation for maintining a total mapcount for large folios.
>>
>> Signed-off-by: David Hildenbrand<david@...hat.com>
> The patch looks good to me. Just curious: Is this change driven by code
> reviewing or performance data profiling? Thanks.
It was identified while observing an performance degradation with small
folios in the fork() microbenchmark discussed in the cover letter
(mentioned here as "unnecessarily degrade fork() performance").
The added atomic_add() was sufficient for the compiler not inline and
optimize-out nr_pages, inserting a function call to a function where
nr_pages is not optimized out.
--
Cheers,
David / dhildenb
Powered by blists - more mailing lists