From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id C256BC83000 for ; Fri, 27 Jun 2025 19:07:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 462D86B00BE; Fri, 27 Jun 2025 15:07:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 413E06B00BF; Fri, 27 Jun 2025 15:07:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3559C6B00C0; Fri, 27 Jun 2025 15:07:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 231F26B00BE for ; Fri, 27 Jun 2025 15:07:31 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id C92DCC02E7 for ; Fri, 27 Jun 2025 19:07:30 +0000 (UTC) X-FDA: 83602114260.08.F1369A1 Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf17.hostedemail.com (Postfix) with ESMTP id 179E14000D for ; Fri, 27 Jun 2025 19:07:28 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=ixdkWGva; spf=pass (imf17.hostedemail.com: domain of sj@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751051249; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=sVErI6YDfPWw/pKYX3yFOy8fzpj0xZ2pcnJZdnmrBP0=; b=SiK7mnxZn5FXLMfYuQWb6hYlMqzaJ0e5EmplO2xrSGx9uJscbmsztOy+EBmMCZRsVqK0/H mKbNMfWTADuXeE5dxp4vsoZ3om4HG6QQ8F3Cw+x70kLrA7q3/z6CTYPCAJ7sE6Yqr1QJ32 InkR0IY62EsFH7RZ4g2mUX6YYurX/i8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751051249; a=rsa-sha256; cv=none; b=nS1sk11nLUcD47os97XjHmIml9u6JO8Gj/3X9gVug+F1Ue5Ag3lu+JdJ+SdV0v11TCceTP wr+7JeaEsId26C9Q4fj5EhWDs+xrNrgGJa93XkHC+k1m0zljSwXalOSRu2NInvQ38FslvS XRS2xNuasXdjP1XWZKXZgnmiXxXq0+o= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=ixdkWGva; spf=pass (imf17.hostedemail.com: domain of sj@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 25283A53055; Fri, 27 Jun 2025 19:07:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A108AC4CEF1; Fri, 27 Jun 2025 19:07:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1751051247; bh=GHZyCz3k+4Q/vRmIMYgAOLIbt1ZePQ/jnRsUDREhYUA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ixdkWGvaCrS/O5cwtfV6sAHGQaTnOjAtp1awY1We1C3fqgdRJUrYV/N649q15g1dC It52OqJkNdWk6ika8cM297cJu5pMBpPi81qgjewKpHujOviXnqMmBJjVxBHwLi2MNn MkoB5bS5Q9ZHvBvHbokwZ/hfpuwT1+IUJtXLjUjK/1orGdibVX7J3vpMzmqujb8tOK nfXHNEZkwHeV0hLXj0gy0T4R3G0W7g9/dRMVyMDtN6qjw+htSRJIiMynEcx6EyvEuK TJ8IcnhzCBjZtaW1zXtSDtKlTal28FYrgp73DnPhH8EGmHKrgyKzzVTuE7FddeviXx dllC9k/ctZYDA== From: SeongJae Park To: Shakeel Butt Cc: SeongJae Park , Davidlohr Bueso , akpm@linux-foundation.org, mhocko@kernel.org, hannes@cmpxchg.org, roman.gushchin@linux.dev, yosryahmed@google.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 4/4] mm: introduce per-node proactive reclaim interface Date: Fri, 27 Jun 2025 12:07:25 -0700 Message-Id: <20250627190725.52969-1-sj@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 179E14000D X-Stat-Signature: bponxf3y76qbqjz3msfnjxasz467kqyt X-Rspam-User: X-HE-Tag: 1751051248-442634 X-HE-Meta: U2FsdGVkX19GY8giCGOenCoTjcgk6ZPBubtYfo14XIZuIi7f/v8HcP1mWmglwOyNHuWp2qVhmaXcAs8CX9WucAbEKSovxQ9rdEoc4SsdeoUiyvcjcFxuZD9dq4KLE6kr1U3VJjnwYplbdq2rbIF6viwewRXFKuZKpxUA53PYldbh7ya1LJG2Ci8yWUEfzaRbluvL1vy6TjtiVyXVBOl71UYB6VdgWbLlN+lQTw02O4bk2fF1llb7Fe0tytJS0XTYDU5+Xoe1bhL2PxgwIDlMo/rbJkiL+G1G03Ou/Y+zWYq6NYXPQAHNsUmj1eaWuuCrXEe1Z0k/EdlBTmdYHe9nUXquwAn5U3N7+/puomvmeAxa7hHXkT0/JlV/OTC82IRBe9liMS0VdtCwhN4rSnQ+MFOMF3QXCSdvbwz0iqI/R1g1kGCO0V0KbjEG5MMNKxL+BjFdZ5nnpQHviOhdHIibPT7s793MU/PWb4nGH30SifqNhTA4BiEz6xkftctA7IGIb/Gsqw2m/6QPjcLWFFbacpv7WLvc4vxaE1H08+J4NB7NUSgobqeyHWFRqC00lwnE8dGSm0e2vtMaUlz3RA/B2Qg0oLpBKrWeAKU8x6Qs8982dwqkMSHvB7tig6N55a6omLS9OG+Zpw1yM52/fMSpOctk572OnuXLeFtgNyL7vWR45Mzi2Sh8i2OOW7r1ZyFe/OgN2fdyCl1f0pvABz9kxDwim3d2v3WTnHCcJqomyi1GMCz49LN+Y9qrJMBC00YXIzLETAcc7HMBUQzc4OzU+Dm/H/Qm0an/ara7Q2d73fDTOJoHb2xg1PbV6pu3jESewgoQo3SDFyYazlcIMbldnpKDCvDJXz+Q1CzjeyH3XSnG9I0JqodUvSW7W73pgpLzmeBNIBH3o72ATcS0JkbY+BbjUIledVvVPNNBoLuOFVELCXzxXU8hoz9A+YumO9ULcdaS93mP3VSpskn9dvS Acb8AaM6 F1rlMIykzaGPl2KIymV+iVIAQ9Aibbe4MwLMy07QeT30WllFKE+I0bo5IhGrJSnxkFmemMede9kWo6PRjd2ShteK5AJlg3R/1VwRHST16X5pNUxLbp/hIorbSGjYdb6bq2JBx2sze/7rsjOBivaOBK4TaF1WlCgaWI9Djtj7lTQY9MQNs1Djp+Ojdh8ebn4cMrsAnDFBEaUiY88sWbAECs2rrUVuTBpqRpDI/bStBjJpZfsRxDRVmz2SQXE7WO1XaAwRolg9emYPglwrj92zU1uz0rVbpD1gOxmLA X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, 25 Jun 2025 16:10:16 -0700 Shakeel Butt wrote: > On Mon, Jun 23, 2025 at 11:58:51AM -0700, Davidlohr Bueso wrote: > > This adds support for allowing proactive reclaim in general on a > > NUMA system. A per-node interface extends support for beyond a > > memcg-specific interface, respecting the current semantics of > > memory.reclaim: respecting aging LRU and not supporting > > artificially triggering eviction on nodes belonging to non-bottom > > tiers. > > > > This patch allows userspace to do: > > > > echo "512M swappiness=10" > /sys/devices/system/node/nodeX/reclaim [...] > One orthogonal thought: I wonder if we want a unified aging (hotness or > generation or active/inactive) view of jobs/memcgs/system. At the moment > due to the way LRUs are implemented i.e. per-memcg per-node, we can have > different view of these LRUs even for the same memcg. For example the > hottest pages in low tier node might be colder than coldest pages in the > top tier. I think it would be nice to have, and DAMON could help. DAMON can monitor access patterns on the entire physical address space and make actions such as migrating pages to different nodes[1] or LRU-[de]activate ([anti-]aging)[2] for specific cgroups[3,4], based on the monitored access pattern. Such migrations and [anti-]aging would not conflict with page fault and memory pressure based promotions and demotions, so could help existing tiering solutions by running those together. > Not sure how to implement it in a scalable way. DAMON's monitoring overhead is designed to be not ruled by memory size, so scalable in terms of memory size. We recently found it actually shows reasonable monitoring results on an 1 TiB memory machine[5]. DAMON incurs minimum overhead and limited to one CPU by default. If needed, it could also scale out using multiple threads. [1] https://lore.kernel.org/all/20250420194030.75838-1-sj@kernel.org [2] https://lore.kernel.org/all/20220613192301.8817-1-sj@kernel.org [3] https://lkml.kernel.org/r/20221205230830.144349-1-sj@kernel.org [4] https://lore.kernel.org/20250619220023.24023-1-sj@kernel.org [5] page 46, right side plot of https://static.sched.com/hosted_files/ossna2025/16/damon_ossna25.pdf?_gl=1*12x1jv*_gcl_au*OTkyNjI0NTk0LjE3NTA4Nzg1Mzg.*FPAU*OTkyNjI0NTk0LjE3NTA4Nzg1Mzg. Thanks, SJ