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 1DD3CC3DA6E for ; Wed, 3 Jan 2024 09:12:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A29328D004D; Wed, 3 Jan 2024 04:12:49 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9D95B8D0035; Wed, 3 Jan 2024 04:12:49 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8C7738D004D; Wed, 3 Jan 2024 04:12:49 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 7C3F48D0035 for ; Wed, 3 Jan 2024 04:12:49 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 498D8A1867 for ; Wed, 3 Jan 2024 09:12:49 +0000 (UTC) X-FDA: 81637434858.16.60171A9 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf03.hostedemail.com (Postfix) with ESMTP id 2CCE52000A for ; Wed, 3 Jan 2024 09:12:46 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1704273167; 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-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2JFrb7essy7Yu2y7ilWuK1vpD+5BJ39pfmPrXnTcdEU=; b=tUO05ye5ErvdHTRo4Xu/BDgTu3e3w4P20Fhrv9odEF3NAI/h1GD2jOa4jvtb85GKldE8kl w0BdzS3c1Prw8gwUGpskFvURadCXz54eg9QiSXKjPMXwDOt2RfW5hxc/zQBscn8cBevfS5 6nz+nBEWNxI/44JZEI93OweHq6kaCP0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1704273167; a=rsa-sha256; cv=none; b=m1ac8Ow+yU4bbc02APF7npbg3Bxf4e/pZRWRmduZerRuUy6RfYY5ukYLF7rLGI018ZH/hi GVKbJ4LZFbkkcmiiOLfvk5a1MSt0E45O8Soamz/FBpqW6Y/D92H5hXoOOQt0Q2dTQk0j2T uFArNquQqsSZ1N+QVb9xzhEEMo8Aiuw= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com; dmarc=pass (policy=none) header.from=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id EA3D2C15; Wed, 3 Jan 2024 01:13:31 -0800 (PST) Received: from [10.57.74.226] (unknown [10.57.74.226]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3F2D73F7A6; Wed, 3 Jan 2024 01:12:43 -0800 (PST) Message-ID: <7acefbe0-9413-48fd-ad98-56fecc6f29da@arm.com> Date: Wed, 3 Jan 2024 09:12:40 +0000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1 0/4] Enable >0 order folio memory compaction Content-Language: en-GB To: Zi Yan Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Huang, Ying" , Andrew Morton , "Matthew Wilcox (Oracle)" , David Hildenbrand , "Yin, Fengwei" , Yu Zhao , Vlastimil Babka , "Kirill A . Shutemov" , Johannes Weiner , Baolin Wang , Kemeng Shi , Mel Gorman , Rohan Puri , Mcgrof Chamberlain , Adam Manzanares , "Vishal Moola (Oracle)" References: <20231113170157.280181-1-zi.yan@sent.com> <1e7cf758-ac0e-4eda-a8e2-90db5eed7f7a@arm.com> <7ED1378A-AC39-48A2-8A2A-E06C7858DCE1@nvidia.com> From: Ryan Roberts In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 2CCE52000A X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: mbdg4rd83pxdfct6jyygnsuk45xk4nyf X-HE-Tag: 1704273166-435313 X-HE-Meta: U2FsdGVkX1+/vWkpXxF/LSnh0JoFwk7h+JXVZ6+2ugg3kgF3Gk4MXA16IRHg9GRqJ7qg6HP8/b0a8O14VTacxO0u8hJzgAGSn68ck0YJDjM1XvotT9iQLQY83FT7gjg6euZey92Y/3KGOEncrjJr9floz8/TWWhVtqzcHhV4emS6dP9LPo8PNm/rwewK2UAAVqv3P2BxiRde4MOEvH4fMwH9cLFRxoiEokN4kl/saICx+pwxTcU0UxvxnbSRAerEdPh3TlQ3FMSVRNBZXDYa/FEqEhn1964T5NDRlXb4CtJlF0gGoCVdwka3p+OEAOuyyPmKC+NcAA0PeXgKRfN9UXSPsi9sIikP4760Q6hd5TUOvA3/z/vyribCHh0CWiOxARTd0Vcpwebi6ysOawjHHYnY+hX+Toq6xkW6fKseubKNMsHVCPyBa4PO/+AYAoEd9mzwVCWqRIIYHR9uNbZfK+/PAuGZzxMNwYPvoLFVCUiT8i2esFaVylcesFSpxms2U8Ze8ZVbFYtbM3jcomPEVZhlOqvwP1nIxIDfisbWClAO9uESC7xnja7lRCYfp5e6cSmGR7M1yjfg9p02icxqF/APjG2wlXXBaD5vx1vOxwj5UgtegRYY5qyNQbgDLxZqxuf7NOrYyFpmq3Zuhi9zE6cTwSpn5Lmj+Iz9zdI+POLTFfBhYGmR4MsuWAM2qBevZuh8dAeJYvrmNoOVvha5ZQgOSho67Qi9mn9ZU14MU3Wi5nhnXvand6eku80uTxrsYHEgksz1ZDRcpz8xfx4CHUKsjszMIdLrvavgVdO17GwmsVBme01aLnVBsQnP3imXu8bJ/eif+q9o3Mlzv0RJYIJJi11pks6QlNgX4knRTRLN0wyfKqv1QeJeZRnn/T2rgTIOAv8cet2x+fVNZai6+MbnTRAdpOJkiBqQ7rC0r3gc0dAiWGN7VqVtErU+iNf6Sg1nPN5m9tzEnEe1cGl hPwPuXz6 FuEGDoym1WzYxF7P0tmF6vDmldzodo3q/0AbZPw3ZZXmWbtxHoyLEb+TxFQfc8yfZRaTYF2GbVYXHDhU9A9XiO9tTNloWdTJY7X3RuNzBcGv5YZhGqcVvslVM0fFNn+DUIhP/4dqtzLW0qm7//J7OgO9oCPscG92+YU0IUaoyhwCJImoJbwFSRV4b3lr18EyHtD3ZX0NoE0ayGBB75wCuIbtfmM8O84rTMVXx 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 02/01/2024 20:50, Zi Yan wrote: > On 21 Nov 2023, at 12:11, Ryan Roberts wrote: > >> On 21/11/2023 16:45, Zi Yan wrote: >>> On 21 Nov 2023, at 10:46, Ryan Roberts wrote: >>> >>>>> >>>>> vm-scalability results >>>>> === >>>>> >>>>> ========================================================================================= >>>>> compiler/kconfig/rootfs/runtime/tbox_group/test/testcase: >>>>> gcc-13/defconfig/debian/300s/qemu-vm/mmap-xread-seq-mt/vm-scalability >>>>> >>>>> commit: >>>>> 6.6.0-rc4-mm-everything-2023-10-21-02-40+ >>>>> 6.6.0-rc4-split-folio-in-compaction+ >>>>> 6.6.0-rc4-folio-migration-in-compaction+ >>>>> 6.6.0-rc4-folio-migration-free-page-split+ >>>>> 6.6.0-rc4-folio-migration-free-page-split-sort-src+ >>>>> >>>>> 6.6.0-rc4-mm-eve 6.6.0-rc4-split-folio-in-co 6.6.0-rc4-folio-migration-i 6.6.0-rc4-folio-migration-f 6.6.0-rc4-folio-migration-f >>>>> ---------------- --------------------------- --------------------------- --------------------------- --------------------------- >>>>> %stddev %change %stddev %change %stddev %change %stddev %change %stddev >>>>> \ | \ | \ | \ | \ >>>>> 12896955 +2.7% 13249322 -4.0% 12385175 ± 5% +1.1% 13033951 -0.4% 12845698 vm-scalability.throughput >>>> >>>> Hi Zi, >>>> >>>> Are you able to add any commentary to these results as I'm struggling to >>>> interpret them; Is a positive or negative change better (are they times or >>>> rates?). What are the stddev values? The title suggests percent but the values >>>> are huge - I'm trying to understand what the error bars look like - are the >>>> swings real or noise? >>> >>> The metric is vm-scalability.throughput, so the larger the better. Some %stddev >>> are not present since they are too small. For 6.6.0-rc4-folio-migration-in-compaction+, >>> %stddev is greater than %change, so the change might be noise. >> >> Ahh got it - thanks! >> >>> >>> Also, I talked to DavidH in last THP Cabal meeting about this. He suggested that >>> there are a lot of noise in vm-scalability like what I have here and I should >>> run more iterations and on bare metal. I am currently rerun them on a baremetal >>> and more iterations on the existing VM and report the results later. Please >>> note that the runs really take some time. >> >> Ahh ok, I'll wait for the bare metal numbers and will disregard these for now. >> Thanks! > > It seems that the unexpected big mmap-pread-seq-mt perf drop came from the mistake I > made in patch 1. After fixing that, mmap-pread-seq-mt perf only drops 0.5%. The new > results on top of 6.7.0-rc1-mm-everything-2023-11-15-00-17 are at the end of the email. Good news! I don't see the results for mmap-pread-seq-mt below - perhaps you forgot to include it? > > I am preparing v2 and will send it out soon. > > ========================================================================================= > compiler/kconfig/rootfs/runtime/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/qemu-vm/mmap-xread-seq-mt/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 13041962 +16.1% 15142976 +5.0% 13690666 ± 6% +6.7% 13920441 +5.5% 13762582 vm-scalability.throughput I'm still not sure I'm interpretting this correctly; is %change always relative to 6.7.0-rc1-mm-everything-2023-11-15-00-17 or is it relative to the previous commit? If the former, then it looks like splitting the folios is actually faster than migrating them whole? > > ========================================================================================= > compiler/kconfig/rootfs/runtime/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/qemu-vm/mmap-pread-seq/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 14998168 -1.0% 14852803 -0.7% 14890569 -0.3% 14946766 -0.4% 14943302 vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/qemu-vm/lru-file-readtwice/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 6750930 ± 7% +41.5% 9549570 ± 2% +31.6% 8883545 ± 2% +33.1% 8982606 ± 2% +30.7% 8821667 ± 3% vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/qemu-vm/lru-file-mmap-read/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 5818610 ± 14% +43.1% 8329118 ± 2% +26.0% 7331427 ± 4% +23.2% 7170418 ± 4% +22.8% 7147458 ± 4% vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/qemu-vm/anon-r-rand/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 1973808 -0.2% 1969617 -0.5% 1964376 +0.3% 1979245 +1.0% 1993677 vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/size/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/512G/qemu-vm/anon-w-rand/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 479486 +0.3% 481036 +0.0% 479580 +2.3% 490310 +1.6% 487107 vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/size/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/512G/qemu-vm/anon-cow-rand/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 453237 +1.2% 458580 +0.5% 455455 +2.6% 464830 +2.6% 465211 vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/size/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/256G/qemu-vm/msync/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 1074404 ± 5% +78.7% 1920268 +78.7% 1920270 +77.2% 1903612 +78.0% 1912223 vm-scalability.throughput > > ========================================================================================= > compiler/kconfig/rootfs/runtime/size/tbox_group/test/testcase: > gcc-13/defconfig/debian/300s/256G/qemu-vm/msync-mt/vm-scalability > > commit: > 6.7.0-rc1-mm-everything-2023-11-15-00-17+ > 6.7.0-rc1-split-folio-in-compaction+ > 6.7.0-rc1-folio-migration-in-compaction+ > 6.7.0-rc1-folio-migration-free-page-split+ > 6.7.0-rc1-folio-migration-free-page-split-sort-src+ > > 6.7.0-rc1-mm-eve 6.7.0-rc1-split-folio-in-co 6.7.0-rc1-folio-migration-i 6.7.0-rc1-folio-migration-f 6.7.0-rc1-folio-migration-f > ---------------- --------------------------- --------------------------- --------------------------- --------------------------- > %stddev %change %stddev %change %stddev %change %stddev %change %stddev > \ | \ | \ | \ | \ > 2568988 +5.3% 2706227 +5.3% 2706214 +6.3% 2729716 +5.3% 2704539 vm-scalability.throughput > > > -- > Best Regards, > Yan, Zi