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 64859C3ABD8 for ; Mon, 19 May 2025 01:56:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B9A7C6B000A; Sun, 18 May 2025 21:56:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B20836B0082; Sun, 18 May 2025 21:56:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 99A496B0083; Sun, 18 May 2025 21:56:11 -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 6E3A16B000A for ; Sun, 18 May 2025 21:56:11 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id ACA4B8089F for ; Mon, 19 May 2025 01:56:12 +0000 (UTC) X-FDA: 83457992184.07.86D7607 Received: from mail-yb1-f171.google.com (mail-yb1-f171.google.com [209.85.219.171]) by imf26.hostedemail.com (Postfix) with ESMTP id C0689140003 for ; Mon, 19 May 2025 01:56:10 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=LX78aGFw; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf26.hostedemail.com: domain of joshua.hahnjy@gmail.com designates 209.85.219.171 as permitted sender) smtp.mailfrom=joshua.hahnjy@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747619770; 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=0DQgWIwpKftDflC835+KBihfO87t9DUCdy0HWOf1jK8=; b=HFqxGvOEy9TbR6Kf/f81OrWkf/GG6kkdBdcCn4v3YwUygpV6kaH9Vv5KaP8ifD8PrKP/2W ct7oPa4KuoD5O3v3o0aV9eVlY4K2N+LVQEGwGOvds0Ca6ZdIJJ2Ig0weP9bYEPN2b66G6p Dk49NZaG1FbG4AJkhqC62d5bPV+iJ1I= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747619770; a=rsa-sha256; cv=none; b=CVLAvwzsrA1XN9TDB3FB6HweZb1hRce9ejw0bS3+yXaS9Cc1DEVKKezRvtR8Vj3SdIbvRf fK3Bu6szEXwyUQN/gOk0Vc10+rUj/zV+yhueV0D4EfLyMLkuTIAQF6Ylr6LnycgzjLzyAQ Gi4+Wgk7tC9xneRlduBUpYgQiVQKazQ= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=LX78aGFw; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf26.hostedemail.com: domain of joshua.hahnjy@gmail.com designates 209.85.219.171 as permitted sender) smtp.mailfrom=joshua.hahnjy@gmail.com Received: by mail-yb1-f171.google.com with SMTP id 3f1490d57ef6-e73e9e18556so3592608276.0 for ; Sun, 18 May 2025 18:56:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1747619770; x=1748224570; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0DQgWIwpKftDflC835+KBihfO87t9DUCdy0HWOf1jK8=; b=LX78aGFwsFoqLRlRQ6yNIdCFqcRSVE3fla5kfv5KEvDMHEd+dZy91igNsdJdHa9wtH SPNJSnZoFYRQlYSMedLbnc2m9A2g8RLQknBTjKModi3mgN4hhb7f/OKnkSkbLg/9jxvO L7O8ub58+wIben7nBGR2Sv9uFmNdk0kd7sO5gs2+RSBt8sGajaJPo02BEVl42hGuPBHm u2bMbEw38yDEYLYwpN072yaBsUQ2k/Y24hYX1WcEpj+P9S2ZZU1+oa638Futjip6rSW2 Sj4Zmx2w31G5v/UA6gFdluBL8hXyXmx3fHfRCOEpISCTQgUxSmsHScpdMSCZSzrGeyuH ElWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747619770; x=1748224570; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0DQgWIwpKftDflC835+KBihfO87t9DUCdy0HWOf1jK8=; b=LjV/9bMFhr0xn3+uPRPi2UUef6zoXvjrIgxGnN7IXntdSHVP028cIrVHcR0V74B4FH pJdqvNJTwIqh9gwgakwFVzEv+k9ic6U1SF36sh4UFpPKZ+zYDC9LQLBaaYXbB6dcQIH1 HwxwiIAZ3a7NbAzfEOnEkXoxsus8Rxh8KZzkRsNkmxqKU0YTg4BX36pqaEdD4dLvV67X 3vmatHwZh9o8tkqhRlnEoueZ2YuazXvjvMMCEkuuNpr22m3qJ/T9YzRoO9yT1qzzpKcI jZJh6ql9C1RTrn6zJss7/45coZwep2pvyJb93Qi7vviJStz+cr0G03mi537DRb9cwEpM a7rw== X-Forwarded-Encrypted: i=1; AJvYcCUDhYd8gEFw/oOYa2jHwQiDdzOJylASnv0W9LaR85Zu2ayEzt9fy/dSXSlFXFoqmFgcYne4aUUg+Q==@kvack.org X-Gm-Message-State: AOJu0Ywc4tUw2lyuRn+Bra7pnW1vVUDmYoMKRUEPsca40781D/JpHbVe mUPqrTJJT2Cx8lCBlD8wza6jLeYQdc8e59vZ5F76buGFXtNvJPEBWr57 X-Gm-Gg: ASbGncvm3m4to5d28n/LsWscfnT4yEM2GtGnCm/AqcfO5mGWrxoYE8AAXxA18uEKFz2 PE9EnQnZ4E6dFNYDl26ScZdNDnFR16z8qMnJ4yaLEpwISb0AYUFjGbxNP8Cmd2jIh3mFitBwqSN +VQXdOO3wfpRlhyoQvH8eb4NktzvpfYAp4cThL5t5Jz5YGRhTQfguB/+AXbaDiODxQ+Jl9y1/ob P11aMlYaPMHmCD0wTzhZ3L437h3yv25R1smF4VKts+YU3Du8vsskc1cJnh3C1ebgXBk2uK1LSxu WftuLaTwZJ6Xn+cFwuGXviR0vs/OoqZ6G3hFEnysn0MT5kKqHA== X-Google-Smtp-Source: AGHT+IGAszD8bTKPIxGwCxe0ZUbm32eYI5M+akiUC4Ga9sKQDswHwHV2jvKw35mT6laDiCm2+HhJag== X-Received: by 2002:a05:6902:20c7:b0:e79:1e9:59f6 with SMTP id 3f1490d57ef6-e7b6b1bace5mr14392212276.17.1747619769610; Sun, 18 May 2025 18:56:09 -0700 (PDT) Received: from localhost ([2a03:2880:25ff:1::]) by smtp.gmail.com with ESMTPSA id 3f1490d57ef6-e7b6ac68338sm2367815276.12.2025.05.18.18.56.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 May 2025 18:56:08 -0700 (PDT) From: Joshua Hahn To: Joshua Hahn , Andrew Morton Cc: gourry@gourry.net, ying.huang@linux.alibaba.com, honggyu.kim@sk.com, yunjeong.mun@sk.com, gregkh@linuxfoundation.org, rafael@kernel.org, lenb@kernel.org, dan.j.williams@intel.com, Jonathan.Cameron@huawei.com, dave.jiang@intel.com, horen.chuang@linux.dev, hannes@cmpxchg.org, osalvador@suse.de, linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org, linux-mm@kvack.org, kernel-team@meta.com Subject: Re: [PATCH v8] mm/mempolicy: Weighted Interleave Auto-tuning Date: Sun, 18 May 2025 18:56:06 -0700 Message-ID: <20250519015606.378475-1-joshua.hahnjy@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250505182328.4148265-1-joshua.hahnjy@gmail.com> References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: oi1kkxyfbzkbmqhuznd47ybrd7xyrn4x X-Rspam-User: X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: C0689140003 X-HE-Tag: 1747619770-608833 X-HE-Meta: U2FsdGVkX1+p8pibyuro8oGm8yRLzHo5OdYgufi9zDqTe9gf+xKLTE1wTVQpSXVV2Mj2IfAUoW1VFjkFizOrPbSLBC+L9d6I5GZdrMWaAVkh8Y/caTGWb1stp8oLE8wpjnZ+h/jeGOfiR8cQL6eedSzVEeizSS45CVtUjSZGbp4KnKSCBO+luvqhCw3o7h7YgD7frOwRY96WPEFH9tdVX1In8RW1pkclL0AE7T0AGdb+6z3dvUYqp9tP/vCOEKa5odpn3zptEzBQK62PjcAU7jeOdI1esXjC+ZeNnFq5aXZ7ldVAUuDuaoIzhOJ6M+NDoQ2P0li3t5sryuXulMGS4Io40qWid/k1N1BF3U423GpEJgvXNQqKUFCkdSpfKOJ24V+JhEtiJSCDkT5WPvmMhYi0Vxkt+wJ82XmfrCcTorLgPH5FWeBgBMhsFA77XumjO0HcrERVHATO9omT/5/puyu5nxQhfwlIbGM6GTsbIQyCPBcx2I2wywNF6HR7bv4n4IWnq3WSV8KuG/T+9zLZZcMwNOkwb8OK/uI52xSsEkO/mmvHpxJNHXMfXz3U4DSn+uJt+iMyU9NoXkPj+h5rIXj1iMst4KJNOcr0uLLyRg0MdPG4fNpl9ZOpdD+aDKmrlP/hqqJbIfQEzrI4WbbEwIGvpgZr4syuPO78A8fnpILq5mA2WxFGu2q8MvajZVFv54ARtDvv6/KBVqj6BAnNneRKa/kcV1HcDfQ5ZRLjsMGPe8iKCRBHYqjVgX3m6ITa9EfiMbEm9gmvvdXm1mHMKurTNJA+2y8Z6TImbDsnGcptVpA4cU3XBQAaMhIIoTyWeEa3t82Jf37osbHYF4QAJkUEpiOK0dxVQqpMENjvkDa94Fc96ITBTHo9Kx8CaIJ/CIT/2xZGtXSn3mEWhorovPODcjxQd9peD70erNM1BNSAjCsLzgqADQGGNOmlKoO6qrDQoh7PdbloCyfiJbH 6hwdG+ij pyZSG3ZUCLiEY1GhM8nKMqZYP1bHJIIZi8uWD+WCh2AQOohQgA+eg08fUxf1AZt/2ZmjAQaM1aVNTugoUwYKPvAHAHa+10pA5et9/LZYvJpyomDTZi/RiKufOaAfQGOm0p++0uVvtPMb2GSYCtfKoiAYaGtOlTXogxWpdwM2ZJ4Zzz4ZVDVfYx7g2HPMgC/glsobgPl2ZRHoF978GG+GkNqh8tTNkTgQfWO/LTlI5s/OODPhEobM78yQXQ1HDqwZw9KdxRC686opuPtFpDxY64PJatQaqgRH7HgroziD8pq3hCcqWFElSwQw3s2vcOFnv3z2FTLtNaIuK3AZMsA81FpOmt5LlzFE6NWbhXqDk4VI3alZMKtMsvJ7VJwAqcULvSNcAFhtyaEQOk5CSP0i3usLI4z600wF7pmZXXcCLLa6pfpjlYPr7qKghnTi3baEEuy+lm9CvrJd1rwAibVMDS2AW6GQBxltsRAGFUiN5isOkEtLzoxNgcO8eMHdYOs5DtAlok9glW8AsihOw3I8A3i9lX6shBILoZ7nQO0mQ9iPDlwyReojQ11LrhkVDOZusQrJ7TERFPbBtDXy7PgZpJbhBKjau6pr75A2cw1A+TtyHT87uE4BbcYuD7LSq+TQAQCD9fE+WSgoBimEUg5pIvlU6fe3idiRDvfaK8v34F9aIbbmsfEuSu2NTlj/VRKGVQsA0q8wRMpxNqgcVsoahLAi8EkV2qfVlxgpeDSC1Qd/LB9J6zy9UIpUgnFG8UzYRlywzk1estE7rjigcuKa+gVrG3A== 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: Hello Andrew, Perhaps at this point it is best to just send a v9? : -) The v9 will include: 2 code fixlets, as suggested by Ying Huang And adding tags from both Honggyu and Ying. I just thought it would be difficult to track 4 fixlets, but please let me know whatever works best for you! Thank you always for your help. I hope you have a great day! Joshua On Mon, 5 May 2025 11:23:28 -0700 Joshua Hahn wrote: > On machines with multiple memory nodes, interleaving page allocations > across nodes allows for better utilization of each node's bandwidth. > Previous work by Gregory Price [1] introduced weighted interleave, which > allowed for pages to be allocated across nodes according to user-set ratios. > > Ideally, these weights should be proportional to their bandwidth, so > that under bandwidth pressure, each node uses its maximal efficient > bandwidth and prevents latency from increasing exponentially. > > Previously, weighted interleave's default weights were just 1s -- which > would be equivalent to the (unweighted) interleave mempolicy, which goes > through the nodes in a round-robin fashion, ignoring bandwidth information. > > This patch has two main goals: > First, it makes weighted interleave easier to use for users who wish to > relieve bandwidth pressure when using nodes with varying bandwidth (CXL). > By providing a set of "real" default weights that just work out of the > box, users who might not have the capability (or wish to) perform > experimentation to find the most optimal weights for their system can > still take advantage of bandwidth-informed weighted interleave. > > Second, it allows for weighted interleave to dynamically adjust to > hotplugged memory with new bandwidth information. Instead of manually > updating node weights every time new bandwidth information is reported > or taken off, weighted interleave adjusts and provides a new set of > default weights for weighted interleave to use when there is a change > in bandwidth information. > > To meet these goals, this patch introduces an auto-configuration mode > for the interleave weights that provides a reasonable set of default > weights, calculated using bandwidth data reported by the system. In auto > mode, weights are dynamically adjusted based on whatever the current > bandwidth information reports (and responds to hotplug events). > > This patch still supports users manually writing weights into the nodeN > sysfs interface by entering into manual mode. When a user enters manual > mode, the system stops dynamically updating any of the node weights, > even during hotplug events that shift the optimal weight distribution. > > A new sysfs interface "auto" is introduced, which allows users to switch > between the auto (writing 1 or Y) and manual (writing 0 or N) modes. The > system also automatically enters manual mode when a nodeN interface is > manually written to. > > There is one functional change that this patch makes to the existing > weighted_interleave ABI: previously, writing 0 directly to a nodeN > interface was said to reset the weight to the system default. Before > this patch, the default for all weights were 1, which meant that writing > 0 and 1 were functionally equivalent. With this patch, writing 0 is invalid. > > [1] https://lore.kernel.org/linux-mm/20240202170238.90004-1-gregory.price@memverge.com/ > > Suggested-by: Yunjeong Mun > Suggested-by: Oscar Salvador > Suggested-by: Ying Huang > Suggested-by: Harry Yoo > Reviewed-by: Harry Yoo > Co-developed-by: Gregory Price > Signed-off-by: Gregory Price > Signed-off-by: Joshua Hahn > ---