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 4E1C9C36010 for ; Tue, 8 Apr 2025 19:55:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DA940280027; Tue, 8 Apr 2025 15:55:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D323A280026; Tue, 8 Apr 2025 15:55:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BD206280027; Tue, 8 Apr 2025 15:55:40 -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 9A94B280026 for ; Tue, 8 Apr 2025 15:55:40 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id E82F616144D for ; Tue, 8 Apr 2025 19:55:40 +0000 (UTC) X-FDA: 83311931640.27.E6A9D9C Received: from mail-qv1-f54.google.com (mail-qv1-f54.google.com [209.85.219.54]) by imf25.hostedemail.com (Postfix) with ESMTP id AD66CA0010 for ; Tue, 8 Apr 2025 19:55:38 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=nDeCaOPX; spf=pass (imf25.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.54 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744142139; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=AjMXD7eMjhWYUiwH80i0DmUWomvU04d23CxkIBTomHk=; b=QvSqwB+M4Vj1uFvK9FCc6Ov9S6WXZ9m7qH/KvLf+jxnTtTgVbdMBz4CS41Q53zDrMUngkA 1CIq+fYLx8KJB1zsOOyQ/xxrDzOK1jS8cVC4oPG1CuzNH6gwHLTzhX/wpw/9NXp6KJkpJG RCm8Z3L7R7kCNFRo9RAcaayxmUSCuMQ= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744142139; a=rsa-sha256; cv=none; b=zW/7eUVpJ+67102ioGjotemTRUkJ9r/UMZxTPhh1qQmkET4XRQ7Pnn55jSsnIFobp36WN8 TR9lArdTQb5Xqc9mECGOYpgPOiu020dG3s7FBQKHVVgNVp2ttsXEUSV4/1WACPq1Khafiy PEDKZK3Wb0MIZI8D9d5jIDIW7OqQbVY= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=nDeCaOPX; spf=pass (imf25.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.54 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org Received: by mail-qv1-f54.google.com with SMTP id 6a1803df08f44-6e8f05acc13so66708866d6.2 for ; Tue, 08 Apr 2025 12:55:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cmpxchg-org.20230601.gappssmtp.com; s=20230601; t=1744142138; x=1744746938; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=AjMXD7eMjhWYUiwH80i0DmUWomvU04d23CxkIBTomHk=; b=nDeCaOPX3monAtEOzesiXPi7iw9hJtfDG3a6Woa1WdoIPtZSS8/oghLtGE+rZf6NV2 +WgJ3hYwOhrGXFjHBIFEtICGmie/F8aEfelZC2kDG7zh3e1S0bNfdsfA8RkbvLCRrO2a jqojfP5ITnxg8a7OG3MQddd2Wr89929CPno0dgzaL2frrgWFEC6VEE/HCTE3sxk3KPGA 5noyuwe8fE1PHS9KgwnwKEF7D6BbbnmwccV02n8nmbtTwSbvkH6VTYRdCo15XAkykvYh 2yqK9/OtEC+e5zMwXFybxIvXPe9UTs51lJugPa/Sefl7vpe3u+jJi3x+VaElCrqpVxyw yrXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744142138; x=1744746938; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=AjMXD7eMjhWYUiwH80i0DmUWomvU04d23CxkIBTomHk=; b=V4uXalUnModcSFg50oBNT6M1AakN3IzcGwopU1IKh1fKrklv/GlLBjSkESG412NYdr 5wsBVv3J+YR4vld8DfUuljf40gMUcn3Sa1rv5hGQDtkhS9CE3vwWLHYFSGeNXcFZ7sAJ wdMQDySSxjBMSoTe9avzpeUi7VYcv2kbPNmVuT9wLZmQJBsRvRbkWjdcs8vcjzIW5N0k 92GX3O1C7znqlVOkiZo3GYDh2YA0dzDO+6PiQTB0Qa1ZJ4yOBYpgordn0W7D9Lo9lF0y inTzMFCk/pKHrKO2fXAJN7LpZUljhAA7xXoqkVpvxQFh0e2+At9L/SUQEsbe/lgxvIrH ia8A== X-Forwarded-Encrypted: i=1; AJvYcCXkrHs03swe3K81uEOzzjzU9D9cqu0fKjKBuhHrf6na+vNil6UEIIFwnXBPkbv3yqX23PP247smug==@kvack.org X-Gm-Message-State: AOJu0YwlJKBx5BOxO7mHTJJFd7pAdwpiDUmqo8QRViF2Gx4WmkE/UmMD ITLvLiIfaLWlYzoZPRxbirkoXq9QyICyXChDFz0XA5yj9XuA7eIY/8XZNh0SB38= X-Gm-Gg: ASbGncvQ2FAkmYNy2UPeoc8mLZKrOVIuJgthHvts4hMVb77bgjH4NRHK55RnuTvlKh9 QJCVVRty6UFDH4KAhJDLP1E/zSut99SEZma+WmDDSxJdaRNRUpYe/U4o3vnpGP74mbT9NuTKVv7 0+i5oaSYldeuAjdh8iHWwhBpzBRsnNIdNPFgoGeq9t146ed/rlNfmWHvZuOMrbleHBScBkqKuuI y4WjCnCoPDwIUfFkOfFp9cAqDRk8fySp7g0aRosGbaVawh6izmECXw87StwkW5yLlA7jHbbjv01 udzLIN4VKv5VIeme9Irtug8SNmd1xbiqqmYLGyihHdA= X-Google-Smtp-Source: AGHT+IFXT6XjTsrwFY6nkkzwYOcWwoMzRGktgFlUchpbN+1L1qo0bP6hwFz8NH9p84XFI0PIdBp3EA== X-Received: by 2002:a05:6214:2404:b0:6d8:99cf:d2e3 with SMTP id 6a1803df08f44-6f0dbbb1c3fmr8925006d6.22.1744142137740; Tue, 08 Apr 2025 12:55:37 -0700 (PDT) Received: from localhost ([2603:7000:c01:2716:365a:60ff:fe62:ff29]) by smtp.gmail.com with UTF8SMTPSA id 6a1803df08f44-6ef0f137942sm77808716d6.83.2025.04.08.12.55.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 12:55:37 -0700 (PDT) Date: Tue, 8 Apr 2025 15:55:33 -0400 From: Johannes Weiner To: Igor Belousov 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 Message-ID: <20250408195533.GA99052@cmpxchg.org> References: <1743810988579.7.125720@webmail-backend-production-7b88b644bb-5mmj8> <0dbbbe9d17ed489d4a7dbe12026fc6fd@beldev.am> <3f013184c80e254585b56c5f16b7e778@beldev.am> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3f013184c80e254585b56c5f16b7e778@beldev.am> X-Stat-Signature: 9m9wg5eigktcci8iujeo375g8sfybkgo X-Rspam-User: X-Rspamd-Queue-Id: AD66CA0010 X-Rspamd-Server: rspam08 X-HE-Tag: 1744142138-277326 X-HE-Meta: U2FsdGVkX1+kVWhPcTI0gN9DTy5LyCE3P7GdWWC4nkcVLzrruYR1iJMUY74t3w85ParHqFZhKLvy+vK40ZZw5XXutpgBJng3fjD4+RIezzFGZMyNmxa6pNgX4eHWMIw7kS6VVSO1rdmBlt+rFKizIdKHWSv+zrttmRhadZgVkplW5AIptQEGZxo/pvCy0nPXs/dc/bcWVmxXY2piBOpPelOeYWVyGauLSPlZrDPld3bRVrIo/mPuSJLRRWxVLvTSjgKWDRzdoLggdXkCZzpkRxE/C6zRRXHhj3UcGJTXAyLdJpx5e8Jwnz5mBU0iNxp/NWZVvaBs7F7M3Wk1cDFWrC8M+YODSqBC0PtZfha3jdNGMUOMHRxLnSFuGMQilMQQw/nqRO2dxdUQ1NnaLqNj7oabRaCQsKv6dHSl8ZcnShlnWWtw8/A33XGNUhio60Yt9RKZBp7a+uf0DsqN414Gs+jyDn950g/xTEEYbvYPFSkHVYt+xGCYOFlvGjhn3QCkvTDwrPmoKm+j07+nHp3k1Sn7GfaTF41PD86Hh41+AxuGlSEaMoacOLB2K8sXXbivyli6M9KheRG9Gs/CEg6MzQga2Ypd2ssqXvgdiOnAxxahmrRiIJtbzjE9hkXUu5K6y4R5x3QnI7MeoTJtal+1wkalwHTOpUcBuwTNCoKI2tWTKmpaggTPIm0IgaGr3+6TWqHWmGqtGhj/tiLaAYOX/QHzhUqGY5OQeptI6EY2STrX8bsyFbaIeDP4SpABFLofCiSNnpCTogdAYa2ydzCytznawvJnl35AO9lrlDzutB7a0iaZx7xoesr7fWIH1gVH6FCpiW3g8cxg3vTCyvGx9n6A+D0EEC3CPQK0L1KFIHPgvzCNnxP5xoVSp9GS7PQdtgHG/WuMJscZgyLhbecj4ABAyATy0FqqFjk33DwoIQLzIOwnXXm02/2TreQl9HAT8FOQH3MoMRCAjaT7Y+a K6MfSBXL USD2hPCkmFHKXsjmDRyerpiMSFbHB3Iqdv7B8rLzbEHb9E1kpYpxJRoKNYS4ngEK3tNJ4ui5CqnTdvlB9MKXWsBrIygmsclGNruvVMQvMbchrJaVc7uoS8nkWsp0wuNBzbm9LXT5zDKJ/WJF88b0pW8aTRKE0P78xBlW5C7bkBAHQ0TvkQRtKRWOcCXMSGQ3VgQrM8ZpFELtuc47qSsSpDGejZuN6kLuSxtwt2GRglBJOBrU9eCcHj0BEpTxAqz8sKwneW2Emcvkuy4s1Al9YNizO/Hd/uxlFq+CZvUl2FfZCoWbQGE1rCyRpotFqxkeuLDlFZCBD8fa/qxNnqmhmOWBa5Rg5Af+BzL/ZwHcV5KWaFyY/dxcqRADcdZND+1w0zPuI1D+5KJzt2QOuzzNXLQDREPxgNYavdKhrR4PCMzT7LpI= 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 Tue, Apr 08, 2025 at 01:20:11PM +0400, Igor Belousov wrote: > >> >> Now what's funny is that when I tried to compare how 32 threaded build > >> >> would behave on a 8-core VM I couldn't do it because it OOMs with > >> >> zsmalloc as zswap backend. With zblock it doesn't, though, and the > >> >> results are: > >> >> real 12m14.012s > >> >> user 39m37.777s > >> >> sys 14m6.923s > >> >> Zswap: 440148 kB > >> >> Zswapped: 924452 kB > >> >> zswpin 594812 > >> >> zswpout 2802454 > >> >> zswpwb 10878 > >> > >> It's LZ4 for all the test runs. > > > > Can you try zstd and let me know how it goes :) > > 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. This is a general NAK from me on any new allocators that cannot match or outdo zsmalloc storage density in common scenarios. I'm sorry, but I really don't see any reason to do this. We also should probably make zstd the zswap default.