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 761A8C369A2 for ; Thu, 10 Apr 2025 07:02:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BABBA6B02DB; Thu, 10 Apr 2025 03:02:26 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B57F26B02DC; Thu, 10 Apr 2025 03:02:26 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A1EC46B02DD; Thu, 10 Apr 2025 03:02:26 -0400 (EDT) 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 8281C6B02DB for ; Thu, 10 Apr 2025 03:02:26 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 31050140391 for ; Thu, 10 Apr 2025 07:02:28 +0000 (UTC) X-FDA: 83317240776.12.7C9AD3F Received: from server4.hayhost.am (server4.hayhost.am [2.56.206.6]) by imf27.hostedemail.com (Postfix) with ESMTP id CC77440005 for ; Thu, 10 Apr 2025 07:02:25 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=beldev.am header.s=default header.b=PM2B6bWS; spf=pass (imf27.hostedemail.com: domain of igor.b@beldev.am designates 2.56.206.6 as permitted sender) smtp.mailfrom=igor.b@beldev.am; dmarc=pass (policy=none) header.from=beldev.am ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744268546; 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=DWL82tPIOM6tWzfIcLAFHYbFC9Hsnba5uU2kE1Kr1Jw=; b=ED7OfrDu44wPQMaWS1aimwolJTOXc41DowdAqBD7HaRfsgkKqHyV7gm7A0wnjN4AfAF8as 2i2x9mml7LNVtYZWbfUlESV1a7r7Anfe1NzlXVs94Tqj5mkhxXiI9ZU4+T4ng9WDpd3GQI 7130L1zEGHBQKXynvrCZVyGI7NjQd7U= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=beldev.am header.s=default header.b=PM2B6bWS; spf=pass (imf27.hostedemail.com: domain of igor.b@beldev.am designates 2.56.206.6 as permitted sender) smtp.mailfrom=igor.b@beldev.am; dmarc=pass (policy=none) header.from=beldev.am ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744268546; a=rsa-sha256; cv=none; b=EUgPU9e0RrnMe+eJrV7mHRAPZimfkTrMEJVdp1/7Of1jQl1/XKLYHw71PKx6OO1Brq5zFC tpGDhmeC/ruCwIGb9qmTE4pV8UFFMBLkDO5ILBYyhQYbCD47ZeUroVZEtRFovyj/FNPK2f j6sUPDSL6ubyaMkU692+ieMmTtvm/CQ= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=beldev.am; s=default; h=Content-Transfer-Encoding:Content-Type:Message-ID:References: In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=DWL82tPIOM6tWzfIcLAFHYbFC9Hsnba5uU2kE1Kr1Jw=; b=PM2B6bWS971oxZKQ9UzRyHAxKW MO/d4O00gCyQr/ts0I6+D55yytt5BNEbPAA29vYe2lBhv71AEjF3EGkNAMxriqMkrkVxZyXCKt8c0 pfRsw0y2cea25Zol6g3e3s4FdmgaRuH6jzu5lai1tUF6paCeBIxqg4gzmBrj/S3gelsRQuWyi1bEV JPd5QIsMR48uVAbie/Iwu1hlEUkt/0dEeYHKDQ/B1IVzm3x27yPmfxTXMSAcjsm93KtTno9vBeQui prYW8hNWU11MT1nfAEGxq06UjK0OfHGEJ6TEDTArFtMr5mbSXyb5AKaNTrtSn5cBT0G2NxDAMGSW2 NOTD/3pg==; Received: from [::1] (port=39210 helo=server4.hayhost.am) by server4.hayhost.am with esmtpa (Exim 4.98.1) (envelope-from ) id 1u2lvl-00000000CQ2-2CCd; Thu, 10 Apr 2025 11:02:33 +0400 MIME-Version: 1.0 Date: Thu, 10 Apr 2025 11:02:31 +0400 From: Igor Belousov To: Johannes Weiner Cc: Nhat Pham , vitaly.wool@konsulko.se, linux-mm@kvack.org, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Shakeel Butt , Yosry Ahmed Subject: Re: [PATCH v2] mm: add zblock allocator In-Reply-To: <6e1c6b20481c2cb41930d37da4fe8aeb@beldev.am> References: <1743810988579.7.125720@webmail-backend-production-7b88b644bb-5mmj8> <0dbbbe9d17ed489d4a7dbe12026fc6fd@beldev.am> <3f013184c80e254585b56c5f16b7e778@beldev.am> <20250408195533.GA99052@cmpxchg.org> <6e1c6b20481c2cb41930d37da4fe8aeb@beldev.am> User-Agent: Roundcube Webmail/1.6.9 Message-ID: <019035e5ecae12390048b73c042ec54d@beldev.am> X-Sender: igor.b@beldev.am Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - server4.hayhost.am X-AntiAbuse: Original Domain - kvack.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - beldev.am X-Get-Message-Sender-Via: server4.hayhost.am: authenticated_id: igor.b@beldev.am X-Authenticated-Sender: server4.hayhost.am: igor.b@beldev.am X-Rspamd-Queue-Id: CC77440005 X-Stat-Signature: gd8nk5pm7nwhrykdca8quoy31ddx7fan X-Rspam-User: X-Rspamd-Server: rspam12 X-HE-Tag: 1744268545-125219 X-HE-Meta: U2FsdGVkX18SH+JmdF+eJHurKvigg4SUV1lAuRm7NE0M2iMRul3n9j5NrgpBSO50T+ifQW6B9W+OWrJBHWz7dhWO9v0LrHD53VIUZkJU+rZZWZqIJxOpwvB+MJnS2CIf3JG2G+b7bpB1RdLQnyXF1F+LVA+TrpiJwNhGXwE5THppvhpuDpiiHSBpT+hpzwfcAYAuk5jM2LPXvQwfOedr2iVk5uH2aj8xQ2P/2ERtNzC2RgEIH5zy0PBLZbY38Mm6QyDp3kIes10Gumx7vxXnhaTPID+ksdXwr3C2/e9GiyhKbLIswXxXJCCTW1tfv2VfpicPX2yhYjAfe8p7G7Um3qGK7qAadYVotnjoEx+pmPabpFzyc4yelp7CjODJVxxyWyAd7gRT27Hn330pkuJBYQDTOs+QphFWG0zUa5ZSZ2TrFAw5x3xwZ4ji/VpPvTgcKH2dhaROUZsmFzISb5XhtL6hEEbYg0w+augBlOhyPu0oebXhROcdL2ZiMprqvnUzMlML0ZMCRscrWOyUZiUOw9FuXUrfcDDsfhPmLxe+zsjwSLEHQEnuiNYH8ogs4QZ3gDO1sIPE4ovx1YHqyxRK+StSC9RPDLdXoVTCSGK/S1t297iVH07b6YGm6ywAHGsJKtgAov+huMq5PGjlIqnGq9IP3nth13kQYnAP0xbDdP2y6WPrzQxCaSsWjC9fGu4SsOPAYe/JkdQM4ZqurP/aYbIa7gx4B++L50GeWrCvh64nZBrL38o6gTrOFPkMEnE7FDn+5qlNLNBTD0AQi8lfvdfxPSIFLE4TyjtKAAISFDgOAXNU4ThFDh19DviyEqTuKMynx4pTwgaVSbFdBnthatAPD4qCcEporI2bKy5NOdFKCQTHCV8WZqhWBXHcPi7HTQBCU/ALwNEdMYMUxtH/iIC6azRKRi36ldqw6wcsiYrjVAe+9xbnxhEKEP0m0pwCg+q4s8i12ohw+50wwsh Dn7WhhEP /VkbtJLOfRGcEdfLjRNW83H+tgjDzA+E1syjYlMKCBusGdjMPBifm2MmTn+rszCPy4wiU1oqYsbob93k7MzyJWIWbtX5DQoLCV589p2XDgLg2COUW0YPhAch2+ieNTNF1Ani7P5bWroYeO8XJxAoMKZGcni3jwxAxvRYp90mWCXizb72A3cWh1UFNEmpAfaaQGJEtOAZjU0NRUBuxtFndy4wEBrQjr7FXEztfjyifbDWqbbti5KIRN3geHY/6Pm59HaYUXXE4HZK1huuMgMjmoNkffrjAvc8ELzQblmKANSZRR3ifigY/eWytDkJXdDNsVQmpRVihqwfLfyYxqcLFiWCi4R2e7VzwlKPQfKbFgYz3rjZLABQu+1FZFQ3de5A16UhkLgTequGi+p6+X+8dtRk9fNi0dwaOlUv8 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000524, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: > Hi Johannes, > >>> Sure. zstd/8 cores/make -j32: >>> >>> zsmalloc: >>> real 7m36.413s >>> user 38m0.481s >>> sys 7m19.108s >>> Zswap: 211028 kB >>> Zswapped: 925904 kB >>> zswpin 397851 >>> zswpout 1625707 >>> zswpwb 5126 >>> >>> zblock: >>> real 7m55.009s >>> user 39m23.147s >>> sys 7m44.004s >>> Zswap: 253068 kB >>> Zswapped: 919956 kB >>> zswpin 456843 >>> zswpout 2058963 >>> zswpwb 3921 >> >> So zstd results in nearly double the compression ratio, which in turn >> cuts total execution time *almost in half*. >> >> The numbers speak for themselves. Compression efficiency >>> allocator >> speed, because compression efficiency ultimately drives the continuous >> *rate* at which allocations need to occur. You're trying to optimize a >> constant coefficient at the expense of a higher-order one, which is a >> losing proposition. > > Actually there's a slight bug in zblock code for 4K page case which > caused storage inefficiency for small (== well compressed) memory > blocks. With that one fixed, the results look a lot brighter for > zblock: > > 1. zblock/zstd/8 cores/make -j32 bzImage > real 7m28.290s > user 37m27.055s > sys 7m18.629s > Zswap: 221516 kB > Zswapped: 904104 kB > zswpin 425424 > zswpout 2011503 > zswpwb 4111 For the sake of completeness I re-ran that test with the bugfix and LZ4 (so, zblock/lz4/8 cores/make -j32 bzImage) and I got: real 7m44.154s user 38m26.645s sys 7m38.302s zswpin 648108 zswpout 2490449 zswpwb 9499 So there's *no* significant cut with zstd in execution time, even on a Ryzen 9 and that invalidates your point. Sorry for the past confusion, it was an honest mistake from our side. If zsmalloc didn't OOM with lz4 we probably would have seen the discrepancy and found the bug earlier. And on ARM64 and RISC-V targets we have run the tests on, zstd is slower than lz4. /Igor