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 D5D4EC27C6E for ; Fri, 14 Jun 2024 15:03:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E85326B008A; Fri, 14 Jun 2024 11:03:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 778F86B00C4; Fri, 14 Jun 2024 11:03:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E2E8F6B00BA; Fri, 14 Jun 2024 11:03:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 712366B014E for ; Fri, 14 Jun 2024 11:02:42 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 001A51C125E for ; Fri, 14 Jun 2024 15:02:41 +0000 (UTC) X-FDA: 82229810922.21.F63A019 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) by imf28.hostedemail.com (Postfix) with ESMTP id E2E82C0013 for ; Fri, 14 Jun 2024 15:02:39 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ngMB4Zix; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf28.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.221.50 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718377357; a=rsa-sha256; cv=none; b=lpEuiPiNBQlx7dU/a2qZmZCCxpAW9Rcgb/VjiJZr1EqsLYxKy+IArrUYQfUv8xoWtmCnou ApNFBYiI0dqCIWqHXPMI9esGeF1nLEU/luH/NTmpzqVYClom9W+Olv6w42m5Fc58y1jGlh TlcrF1Lk9f8yBhKWKS6ByjeETtTvlIE= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=ngMB4Zix; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf28.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.221.50 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1718377357; 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=Z+iLuqVadCoqCg4bKDGvoLPKxtcgCGNFeClX6r1NiCA=; b=jWR6oVbHQnSWq3uOuUFMozOaNJxoFYUk58XD/QO8FrXiIAD9b3LRi5hHXkXtbdt5YAGbs3 WhUkPpxl23XY2lL/nv7QuRYZm25iN2pdJ26nuIqodVy5/LCv1zKqojcm8z01ugVzf+SPl2 RjxKXwauRLZ8PdGIkGGTWn1ew9UhDsg= Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-35f225ac23bso2234086f8f.0 for ; Fri, 14 Jun 2024 08:02:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718377358; x=1718982158; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Z+iLuqVadCoqCg4bKDGvoLPKxtcgCGNFeClX6r1NiCA=; b=ngMB4Zixcd2ZR3rnrRf7AG7vL42iwABU7Q4nIhzc4cLKhUB0PPiyMso2G80t+kX4yn UTsrSFKl4cQqxvaQirwQWzp/7VU+y2AQ1kP5wHQ+bFk0SKYlbgvWOIfsKyr9YJVN5lAH YtWNfaROIIK845XffP01+rIuXrteKWM5DXlruKD8Yi1ECtUf1/FVCdAfn8kuU431nQj7 ix90DG3V7IB/owoGqRd+VNtELTO+wdff+9+s7GZTt0w7TET7dCsdvmE1ZlQHddddxtbZ gOgsBR4tgemBGEeB4JYlEdtiWqevT/gb4DE5Gods7hJieQy8RH+v7Ep1FYULU33SM8dI vf4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718377358; x=1718982158; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Z+iLuqVadCoqCg4bKDGvoLPKxtcgCGNFeClX6r1NiCA=; b=IXMUbqR2CH2K6y+syEK/oOQXJZ0wbH8NilOi0o5mk5kagJN4ZNlTCAqlfpBsluLbSG mEWYxYlKVHmfeV0IwhgnQfzC1R/KUNM0F9nrOVdRWx2HzNb0U+SCE5eTFM3xzEEJSCEE OebAL2JO4yABUL7CcspMz/PpD8Z4X6VrOBP+8xVRTtLxyTBARiLGxuS1FYWhWqAtqsT5 9QDTEn5hXhzBZcG2y1hyvOO5l0OKk/1u5WlujJAWEdUEJ8TtQEZqPO904Bq+SFuqO5rG oV0NdgRT2wxDPfCFXR/aFLtQSkKwl1EhRQ1MYpit7/VZDq95cfhev0DgDnTSi/sRYILJ gM+A== X-Forwarded-Encrypted: i=1; AJvYcCVaWWLW9Stb9hIYWBiru7Oli1hO9k3WV5TbfnHINlOs267g7Mr6lfoqIReaz++0p6j1jcIUZVASEWsDZ/EQ+OIR/qA= X-Gm-Message-State: AOJu0YxQn1XUYonjgpNXbPdVtFPFgQ4onzV0T1nKe2EmYhbxNoqp1kWK 81TYYGGvS7sUJ7k3OWclrhx8abrGlDYleXe2yb+51I0RY/zdtKZ2 X-Google-Smtp-Source: AGHT+IFzg5ZaV3h9+rnTo/Q10KwFpqvLV0rc1MUvNPDARB1QJqORIaRjnRAvvLkrYvMMY508iWJ2yQ== X-Received: by 2002:a5d:6650:0:b0:360:8636:7791 with SMTP id ffacd0b85a97d-36086367874mr1132004f8f.16.1718377358198; Fri, 14 Jun 2024 08:02:38 -0700 (PDT) Received: from ?IPV6:2a02:6b6a:b75d:0:64:3301:4710:ec21? ([2a02:6b6a:b75d:0:64:3301:4710:ec21]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-360750f2489sm4630081f8f.69.2024.06.14.08.02.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 14 Jun 2024 08:02:37 -0700 (PDT) Message-ID: Date: Fri, 14 Jun 2024 16:02:37 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v5 1/2] mm: store zero pages to be swapped out in a bitmap To: Andi Kleen Cc: akpm@linux-foundation.org, hannes@cmpxchg.org, shakeel.butt@linux.dev, david@redhat.com, ying.huang@intel.com, hughd@google.com, willy@infradead.org, yosryahmed@google.com, nphamcs@gmail.com, chengming.zhou@linux.dev, linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel-team@meta.com References: <20240614100902.3469724-1-usamaarif642@gmail.com> <20240614100902.3469724-2-usamaarif642@gmail.com> <87ed8zmvla.fsf@linux.intel.com> Content-Language: en-US From: Usama Arif In-Reply-To: <87ed8zmvla.fsf@linux.intel.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: E2E82C0013 X-Stat-Signature: 9wtgge816cimiprj1rwsouberiztjhpf X-Rspam-User: X-HE-Tag: 1718377359-647488 X-HE-Meta: U2FsdGVkX19UxEX2l1ZvU0CvCCEJUmqUrfMsxJXIK9U98U2RzurZIs3g/D6UcqltyZpTbQ6DjFuJDSKebxLuLqb2TN+OTq0IkRkeKMfaRBZbkCitVe3o9Gxg2+kfzGnTDP4z7WTygdte/+LxTyuXRqcut41GTH9Acy25QZ96xVTcMUiUjtp//hE9V51ZCdB1oGA8yH7NODVRtoIkh9KKSl9sMYfuG8RRzRkq3OW+0TsMNCcpYmjhXFUTjpqKOimWA94GihcSNIBulS5r/J4eAsAnr/AUMaG5X5afzKTUJR4rBQslzRqp/0LGd5FGtl6Pj8u6BYcMufybSarpKfAf6Ph1BTazJXm9eZgeUrLhkNL/kRcLr4Q63d8d9wecDDmq2idTHik8qpzKRvXEDkmR0b4EeGavf9V8dNXgugp3sh3mMDGa0xMcsoTXTJBpXZ+fntXQIgiK4NVUQKcdvPn/VkGq/2Z1GKxYbzlujtyGDoA9OKyixXiwKAFzYYw20sEMZyHgshVHm0+mQEV/aL0Wz3ARMzxut+XDeKA3qeFwRxzi94q08eIChedrPOjkmxLHLUNH62wZM785EC4b9MuPhigCqqzMgMpm6XLb9+7jvdCm3x+3Co8vMr5jwVsCi9M1BGaFA7K6CH8/qW9PSIRz4rfjMmSGRKGlAi7v28ROBtnHTaJVqE6LP3izCUlsLjyCa2TKFDV58NQLJt2VsjIzanaRuKXkN1uIqhsJzIEzwtWu3nd5TxXT3rLMePxhKNbXFXy+pXE6VGCHe4TAuhRRgP5YeE1dsG+EeY0y5SedjzpQotteKYYneXyx+cip3C/JxUc9YcbEPlWzINZ14v+/fjv85/R6IwM8UxtKYFUi1Fu5h3g3xTAaaIP5jghzjRL2VTfO3Kzky0SocEDvoOrMFu7upqdjNU7fu3VrYA1iR42LmN5J2yz2zB2yT0GGU59evS3tzFXnpFmP+S8fOWB gRFozfHz p3h8vgbpd29KVv0RJLuegO+Bp01mBo1vhHbLoeQNmv/gQA0jVB8+itkVDnUsE7T/uWDL+lxy9IYYz83lag95nP9keWc/JxTlTPzhRyj76AON/PpDaGs1nAWc4beTjwNsV/7bMnZUCGFO/YsSDjk1n3li2+8B3BAqY5su3VsGp+lVlRyeU1QvW8DpjA8U1+Xi0XYjInlJ9mqf96GuRQG1O+IInvYgHSCme9QU6Qr0Q3vKfHNiDPrwHErOUbJ5z3j5l39EQpUyO8y78dJIzX7tCg895UoA7gpeMooN8lkt6fBrFz2RK/gGnpA78RW8d/AIgY0upNQ0oKDQjYM6KGxq8LBtKXjmCghsRryv/dRd3iKZ0bgeyf1u0c+IjarikiGYjHMh+QmETNKpSj6mmD5AR9/haPlG4mgyT5CCY4FiY4r1O4t4kq2hIQMr2ltCiw487NOBPjgeZb5NZGuJpudgOQh83Ow== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, 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 14/06/2024 15:45, Andi Kleen wrote: > Usama Arif writes: > >> Approximately 10-20% of pages to be swapped out are zero pages [1]. >> Rather than reading/writing these pages to flash resulting >> in increased I/O and flash wear, a bitmap can be used to mark these >> pages as zero at write time, and the pages can be filled at >> read time if the bit corresponding to the page is set. >> With this patch, NVMe writes in Meta server fleet decreased >> by almost 10% with conventional swap setup (zswap disabled). >> >> [1] https://lore.kernel.org/all/20171018104832epcms5p1b2232e2236258de3d03d1344dde9fce0@epcms5p1/ > But how much did the CPU time increase? Surely the new loop is not free? > > -Andi It is negligible. For a zero filled page, without zero-fill optimization, the CPU would have to do page compression in zswap or dispatch write to disk, so this optimization is just replacing the CPU usage for these tasks with CPU usage for checking if page is zero-filled. This is the reason why same-filled optimization was there in zswap. Zswap should focus on actual compression and this series is just moving the optimization to swap. For a non-zero filled page, the loop quits the first instance you see non zero data and checks the last word first, so its likely going to quite very early on in the loop.