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 8C3EEC678D4 for ; Fri, 3 Mar 2023 13:36:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B53D06B0072; Fri, 3 Mar 2023 08:36:32 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B02D96B0073; Fri, 3 Mar 2023 08:36:32 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9CA406B0074; Fri, 3 Mar 2023 08:36:32 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 8B3B56B0072 for ; Fri, 3 Mar 2023 08:36:32 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 40AEC811AC for ; Fri, 3 Mar 2023 13:36:32 +0000 (UTC) X-FDA: 80527686624.05.480654A Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by imf18.hostedemail.com (Postfix) with ESMTP id 15EE81C000E for ; Fri, 3 Mar 2023 13:36:28 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=jfzbGUGt; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=15qFMsVz; spf=pass (imf18.hostedemail.com: domain of vbabka@suse.cz designates 195.135.220.28 as permitted sender) smtp.mailfrom=vbabka@suse.cz; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677850589; 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:dkim-signature; bh=ldNbB431e/ZrOzvtR232Ztvv4QdqleBsDZOUWRjloKA=; b=TJJI6TaseKflSmtwh+LM+GPKIyLUKHodmx+WrA9QwmQFpVRIcPKK0YZ+RhBUDTvihn3Jpl HVGDwUPG5/FyDSuiDAlIA0z/VeYASrpRPGlbatCsrd5v3K+6v/bW/vybgiQHCWaCtyBgLO oeN2nsAGahaPuXuxlqh9B9lzG/NkqxE= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=jfzbGUGt; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=15qFMsVz; spf=pass (imf18.hostedemail.com: domain of vbabka@suse.cz designates 195.135.220.28 as permitted sender) smtp.mailfrom=vbabka@suse.cz; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677850589; a=rsa-sha256; cv=none; b=ml0w9anP+nHJ8o/HfqsWX1IMsY2pboY2G57ExHAUdqRiTMVtqYjGgLuF/sWLkiENjG6wLG Pxav9Tnz6LKCkZZvexyKJYIhvh6Cu/Fgq7/3nPw1KZoPy2sJvZvUP+w7S/rMXQPno1wCrt XzkSJQGWUI6pwGPXYPlgmlZK6HNAi9U= Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 67CBA22CF1; Fri, 3 Mar 2023 13:36:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1677850587; h=from:from:reply-to: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=ldNbB431e/ZrOzvtR232Ztvv4QdqleBsDZOUWRjloKA=; b=jfzbGUGtzuxxk/XkFN/jS61VUNyh3TiopbWLoZ0hI2G91eVu6KAArbMUGz/AW1haNkrR8g dlCq/ANRqrB4GGAa9s68n79xTrPckDOMgc10dukYtGI0gQ7/xEm6tvPWp8uLbQjG1w+oDR L+TAGHmLqVd2Bvv0T/X5aVDWU4d95sQ= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1677850587; h=from:from:reply-to: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=ldNbB431e/ZrOzvtR232Ztvv4QdqleBsDZOUWRjloKA=; b=15qFMsVz58cvQ2nl6DWCa7NNpMEbBCW1jHU1o/xpXMTB5lAic7Iq8NyYVyj4Bmmj0lfHQr lD+R2vNTyhDxypBQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 51D9F1329E; Fri, 3 Mar 2023 13:36:27 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id yr84E9v3AWT2egAAMHmgww (envelope-from ); Fri, 03 Mar 2023 13:36:27 +0000 Message-ID: <8f4793ac-c283-8a23-4aff-ef9d7d5994bd@suse.cz> Date: Fri, 3 Mar 2023 14:36:27 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH] mm, page_alloc: batch cma update on pcp buffer refill To: Alexander Halbuer Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton References: <20230217120504.87043-1-halbuer@sra.uni-hannover.de> <89778da7-74a3-2f2a-1668-afe7b15487dc@suse.cz> <0952ab0d-d640-decb-2f20-57881e45ab52@sra.uni-hannover.de> Content-Language: en-US From: Vlastimil Babka In-Reply-To: <0952ab0d-d640-decb-2f20-57881e45ab52@sra.uni-hannover.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 15EE81C000E X-Rspam-User: X-Stat-Signature: trimcc3mdn74dro11ez9do4mruz4grc4 X-HE-Tag: 1677850588-489076 X-HE-Meta: U2FsdGVkX188JYyJ2f+B4QOowoCQpNEqJgfeeN/JU+gOOF8riO0IdeWZmq7L87KeF9THNJzvqIiPnz4seYHKSum5SQqBXrX27RJHw/iWO9Ymylnz9Mx5enzxqmblumThXio4VVB31BkutCt5i8IBpCpZI6CqCo3d4vmI+A5I/XhvEiYS78u+sQVrexxgooabDn5+LE65j6Wn3DayDeOhLPAPplRqpIBwXuUycrIJDJ9CL8HnzG6ob8sWS9bN0EYB47A/F1cO+s9gUpsbEtbnyeactBXolz5ZsBF23LkrTnEjzWpyZFM1VOC/vZuHHsUNr8qBMOw78zqRnxf7m/jhLfl1QqW86bcz7hKLI2rNBXmPk4c2v5rlmZP34TWvVd/N3VhX4uNMEkg59XBJpjpredGJPVkBf5g3FcV9COCLv3igLj92mdGDYB1WH/qQK2hu/DNIH8SXNgoohfrfPHo9WVPAb5MhVb20HXPIsakGUx/vpvRi0x5U/LBAv//oDArCepRbyqWpdcX406hcw49jZqyqtiWmgDMHv0tVttHhGeqjNT6eGIdsA5GXPqoIl47W4+Y0tGqyrPdOidN468iJzKAcuqTEGMnR7twhOkb5Et4+u6Ob64iFgL7tMORQV1eKyXOuVxt37f9cAquqHC2c9aQrnXArSwnyQ2slS2cD5E2Xj9jkGnbh+viUq410ikmMyJ2plmsqDye8ob31xT+h7eXtEP+mPV7k7Kt15LkqMcYFD0qk4Bb81E26FDxal/plAD9TuPfFnxln4x9K5tM8ZV0QRF7jTfVyMA+MYyKem/aKaXFQRlCriiM4Hax4ScD8O0T2r4NJM7XGREdCQZYFrnp6OPZof6VHQte6+qt/tcSzv2VcIvAxoSu1xAUs7DKfT9wZIqB+KF75rjwNK9QPYZs0wuhUF7Rb60H0G/GAzYHfxTXc5s1JLAeFAzDBih/RQ4AkYk20CtYch4y6NH7 nAKiK2Cl miu5hjAszSH065QKkzmBdUFRclrhoKZpvPHUhtWXFDGzkbObV2f3Cb0gzCUM39Dm5cw8J6BUtgkKKWNGkNyP+2ihjVafjmIZZxbBVrCH5fLKxWeJcs1y49PKu/lN5bzXPVhbfJ88P83eV50Uf0kkOf/CYtDs8bjK7bvrBh2nLFaHHPNN5jlYxuFlx4LO3qKRpVv8Pm/0cFoQ1LGDhl6BRyA24FXgwk+/VFKiAQIX/ArVBPt/7ng4BJcJBGP0uONOylgn+XDtFc8Qp8QZJ1QJxwDAN+lqAoAf2f2dV8X6f8E/oo8znsv80PorECAhl/dA1l+af 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: On 3/3/23 13:52, Alexander Halbuer wrote: > On 2/21/23 11:27, Vlastimil Babka wrote: >> Incidentally, did you observe any improvements by [2] with your test, >> especially as the batch freeing side also no longer does checking under zone >> lock? >> >> Thanks! >> > > I finally managed to repeat the benchmark to see the effects of > disabling alloc and free sanity checks by default ("mm, page_alloc: > reduce page alloc/free sanity checks"; results below). Thanks for the measurements! > Average huge page allocation latency drastically reduces by over 90% in > the single core case. However i can't see any real improvements for the > free operation. Ah, I see now why huge page freeing didn't improve. It's because bulkfree_pcp_prepare() was calling free_page_is_bad(page) thus checking just the head page. So the tail pages were not actually checked. Just another detail of how the checking wasn't thorough anyway. > --- > > Measurement results for the batch allocation benchmark for different > core counts: Internally used functions are alloc_pages_node() for > allocation (get) and __free_pages() for free (put). > > Compared kernel versions are from the mm-unstable branch: > - Reference version (without the mentioned patch): > daf4bcbf2b72 ("mm: cma: make kobj_type structure constant") > - Patched version: > 60114678f165 ("mm-page_alloc-reduce-page-alloc-free-sanity-checks-fix") > > Normale pages > +-------+------+-------+---------+------+-------+---------+ > | cores | base | patch | diff | base | patch | diff | > | | get | get | get | put | put | put | > | | (ns) | (ns) | | (ns) | (ns) | | > +-------+------+-------+---------+------+-------+---------+ > | 1 | 122 | 118 | (-3.3%) | 118 | 116 | (-1.7%) | > | 2 | 133 | 130 | (-2.3%) | 130 | 123 | (-5.4%) | > | 3 | 136 | 132 | (-2.9%) | 175 | 162 | (-7.4%) | > | 4 | 161 | 149 | (-7.5%) | 241 | 226 | (-6.2%) | > | 6 | 247 | 228 | (-7.7%) | 366 | 344 | (-6.0%) | > | 8 | 331 | 304 | (-8.2%) | 484 | 456 | (-5.8%) | > | 10 | 416 | 390 | (-6.2%) | 615 | 578 | (-6.0%) | > | 12 | 502 | 472 | (-6.0%) | 727 | 687 | (-5.5%) | > | 14 | 584 | 552 | (-5.5%) | 862 | 816 | (-5.3%) | > | 16 | 669 | 632 | (-5.5%) | 967 | 923 | (-4.6%) | > | 20 | 833 | 787 | (-5.5%) | 1232 | 1164 | (-5.5%) | > | 24 | 999 | 944 | (-5.5%) | 1462 | 1384 | (-5.3%) | > +-------+------+-------+---------+------+-------+---------+ > > Huge Pages > +-------+------+-------+----------+-------+-------+---------+ > | cores | base | patch | diff | base | patch | diff | > | | get | get | get | put | put | put | > | | (ns) | (ns) | | (ns) | (ns) | | > +-------+------+-------+----------+-------+-------+---------+ > | 1 | 3148 | 177 | (-94.4%) | 2946 | 2872 | (-2.5%) | > | 2 | 3404 | 596 | (-82.5%) | 3318 | 3306 | (-0.4%) | > | 3 | 3581 | 950 | (-73.5%) | 3401 | 3358 | (-1.3%) | > | 4 | 3651 | 1284 | (-64.8%) | 3562 | 3616 | (1.5%) | > | 6 | 3568 | 1929 | (-45.9%) | 4478 | 4564 | (1.9%) | > | 8 | 3605 | 2328 | (-35.4%) | 5658 | 5546 | (-2.0%) | > | 10 | 4093 | 2935 | (-28.3%) | 6758 | 6457 | (-4.5%) | > | 12 | 4778 | 3540 | (-25.9%) | 7698 | 7565 | (-1.7%) | > | 14 | 5565 | 4097 | (-26.4%) | 8748 | 8810 | (0.7%) | > | 16 | 6364 | 4725 | (-25.8%) | 9942 | 10103 | (1.6%) | > | 20 | 8014 | 5915 | (-26.2%) | 12509 | 12772 | (2.1%) | > | 24 | 8732 | 7138 | (-18.3%) | 15217 | 15433 | (1.4%) | > +-------+------+-------+----------+-------+-------+---------+ > >>> >>> [1] https://lore.kernel.org/lkml/1d468148-936f-8816-eb71-1662f2d4945b@suse.cz/ >>> [2] https://lore.kernel.org/linux-mm/20230216095131.17336-1-vbabka@suse.cz/