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 9347AC54E5D for ; Tue, 12 Mar 2024 13:09:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E50C76B00AA; Tue, 12 Mar 2024 09:09:50 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DFF258D0017; Tue, 12 Mar 2024 09:09:50 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CC6C36B00EC; Tue, 12 Mar 2024 09:09:50 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id BCE146B00AA for ; Tue, 12 Mar 2024 09:09:50 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 9303A1202C3 for ; Tue, 12 Mar 2024 13:09:50 +0000 (UTC) X-FDA: 81888419340.02.61B18C5 Received: from mail-yb1-f172.google.com (mail-yb1-f172.google.com [209.85.219.172]) by imf21.hostedemail.com (Postfix) with ESMTP id C0E551C0019 for ; Tue, 12 Mar 2024 13:09:48 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Ieg8XDaQ; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf21.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.219.172 as permitted sender) smtp.mailfrom=ioworker0@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710248988; 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=+48G+vRsg7+lgPK5qgS5JPtHJWZ7UC5Q8Af8HqedyCE=; b=IAkrMa+8G+65NQL+sqgU/SLa3alQ3v25T+TUgF8ibPPyCJ5a3c92jTnxtFkDvwZocBYE6W csJ448DcpnKDlovhui+QnyaNBM7FCuo05fNtdmcWGfUUTr0RGt1C49FdXDvsWJKj3KYoiY ccnokfSR1f/zM0ycmbqY+MD9W3gc+Pk= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Ieg8XDaQ; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf21.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.219.172 as permitted sender) smtp.mailfrom=ioworker0@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710248988; a=rsa-sha256; cv=none; b=uKGYtd9OYi+gIC1VQSMr7q3WqE1Q8eKOI7lGh81HnN0auDbwW3tiHAVGMC29vq4siOGOZd 6/vbMY7G0umHyWaSAJ9GEAyfH3Eq4Q7AKsRPsaozHdiI0P4j3ibzH5qKnWylft8NkrhQu8 Z/lKxydij4FQLNXfrOdX0hyzYDS1lNA= Received: by mail-yb1-f172.google.com with SMTP id 3f1490d57ef6-dcc80d6006aso3995911276.0 for ; Tue, 12 Mar 2024 06:09:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710248988; x=1710853788; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=+48G+vRsg7+lgPK5qgS5JPtHJWZ7UC5Q8Af8HqedyCE=; b=Ieg8XDaQfFDbmdE4KrA7GnQsH0Upj88XJx9TNvV01kcivduohg42CqHYAd57DTgP8g viyaYtkmviDBkH03yvud+JmMNCJTNkEK9vI1BJifjpC5xpzzTbnaHRbZ3n4wyZC7nkIZ 1EwUd1QwPS9//86SZCKta74ZzLP72laAuIGpaHHWX/A3unChe9+AEJxwZvJTMeOuAlbd hT6t9fT0wDNopJxFreXg3CchVW2WNRawTJjTTYQ/xpIUygc0oo3vsUPZKLHwF70zd+3k BNSaAw2Amf+Aa3qBNFp6lsiMj+PF7pQKqivlRCYFGA+YRmzNIlsVNhFp7z4oIwSIOlpp q6Iw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710248988; x=1710853788; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+48G+vRsg7+lgPK5qgS5JPtHJWZ7UC5Q8Af8HqedyCE=; b=ur5RXZ5mh1JILFt8Jn5rxBKCv6f1frITfCoWny8ZzGMFo4bWJBzniGwuxTWsQ5kPHG eeEKZz7WAweOHKbm2kl0VL/X9drlxIULrIKgcY3tB1vPRxTZ8O0KQuUyQSpmsoiYQ2MV jqNBfaSSlvv7yQTTjp+tBlwFtiDhPhqNigEM1m8yaTDiVYQG7kwp8z8fX1F3z/74fM8I ZVObbHcgqY9sDlH3rLSbtwZgt18CbcTO7ZXMmJ51Oi2hJI42Wm6/qxYuGduasoP6pFDo 29H2xENgxOXc3VqZIiIFv4c2dgVOw61QU8QKoAUQ+Agcfr9xECSlbdUKo2o6jGQYDuCn P//w== X-Forwarded-Encrypted: i=1; AJvYcCVM9EsWYkzhzEjALeD79TIbSbnWnnU/b8FhN9aV1MNVV1qGJd77xqa3um4xOoPW4fA3vLrWnwHOina/iGBN3yEWqww= X-Gm-Message-State: AOJu0Yzis1j1FCg5sER0J7nqfNYs3P1mf/JNSUDjyh7jAbKawlUEjf+R 22Sg8LwyK4wtFC3ZB1xr0B7DJ1fchb+AgJWB/WmktAL3QOytAxoN8Gx0dODfuri0mTO2XuU1MxA pWY+IVccSLTHaxFmE67sgZqFtl64= X-Google-Smtp-Source: AGHT+IFnO0pN11NYUrGM946wzMKaXTqTxPNQY42/zJlOr91aUkRgRbcbVrsHkueI/v7rrSkhiWcUFRRT7bDYPw3TcS8= X-Received: by 2002:a25:f621:0:b0:dc6:d093:8622 with SMTP id t33-20020a25f621000000b00dc6d0938622mr6648021ybd.15.1710248987491; Tue, 12 Mar 2024 06:09:47 -0700 (PDT) MIME-Version: 1.0 References: <20240308074921.45752-1-ioworker0@gmail.com> In-Reply-To: From: Lance Yang Date: Tue, 12 Mar 2024 21:09:35 +0800 Message-ID: Subject: Re: [PATCH 1/1] mm/khugepaged: reduce process visible downtime by pre-zeroing hugepage To: David Hildenbrand Cc: akpm@linux-foundation.org, mhocko@suse.com, zokeefe@google.com, shy828301@gmail.com, xiehuan09@gmail.com, songmuchun@bytedance.com, minchan@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: C0E551C0019 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: xmtn4b66ifnw91j1jhj3qne6ixj4shdu X-HE-Tag: 1710248988-662554 X-HE-Meta: U2FsdGVkX1/X19pk8v6v0NcPtkIXoY7yV1l3qYtx1cBeDcDtp+9ZIE/8B+fjT9IwXOLDe5xO8TN05ingYCAhVijsLNDStzHVnTn6GqPi0j3oQ0zAIyQS+J5UFj7/vLXmc3qXPb0Z5fyj6lkUXvl7OL+A9DL0bPm/NUR2WILZXKMsEleSC5JUAUroiGNSTYBaxMKUjFiLu7NCUTJJC/RHvjMvrxKeIlAA6UV0BT/6lrXkPdwm4jcjGZg/9FLK9YUc+YqcGeoWHLgOo1Hwepe9yGQv9JzIQuOi021jEtoFXyGY9prPt6UlmByNdEaKW2CNVih/Z6r7VMKOqrGwzvLy7cz+acAxjCF2DkGpm+A00y+tb7mBvQtJnapOsTHr/o/slyQpAenf3yBpTjenY69sKoPNreDPTISBwepFAeTn44d+uTBTEmkttuvYqqsdzeul5NoWBuXWdvh7+5BCYXQm/r5JZrAWSE/J+Jx0XMaXMAYKzoygFSRN7q2YwOWw2Ha0eGxMXWPD+nGRWrsxGL0fIRSh35Kjgf1gxZZzBo+D90uF7bm12f9+OkdoVfstNvfNj76kWwLxmYNtHirzlIQkN01NJZz94dubqqIWxilwjlrnzAmVwOm/sixtAzD5NLUUhO4C7igGI1eIX1Kp3ibTPjcUueowoMhQcik4sRm/YeNm1TLClQZOKCIeM6L7s9wGIR5VIgN7nu2sEPvijRMDAT8PWQqHxUufDteezu78hJt6ZkfHwkAXqRT07kchYe74CiUpGd+7HvbOPX1ooWx2GEgT35r9x+Fdjjm7lERWhjW6QGA0Xdf2jU33rhwOeCxPjdu+7VXKSfx1hfzBX2RQ2Bj6zt9e615c8QnoERS2ylwKi3xvhCt+JjaVtVeKxB5xF0LLxjC83sUqeAOwhEU5NyS/pND6SG+BzKt1ljGFwVBembS3JYwGousztceja6g74JHloTFvPBGcyCzcL4g 6l4ea405 zv9eBx9sJ5ff2qr6fcZLOTkXqYRKdqbXhyilzXIzhe/Bp6SXUWG2DSlkFBG6ppEmZ2DiMwYyCUT0cy3/kKH8vUuRczNbKqvIqm8XZ3ScLAZY9pZzOK2Q3A1ZDvkFAIv7O0rOBAqauNt/1I4GhD7bAX42wKK2ODsULmIVaEIqulOypK+CMkH6JU7uJA+rRkcjrh2ZSPo56P6uOvTe8YV/i4jmwXxN/bv4P0R+pV2BDGlntUI9lgAd6+ANc6VYBP0G7qkisDc4V8T3qEVntkXMvEDdgWlb5NULzhPrs1bFWkwI+yukGH6tneE7tdXakSH04lLeKkPagoUL2lEJ+TKPiiS0Etc20Tl6yc2fIPZL4kXvsfhRyKEuQXMGz5Q== 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: Hey David, Thanks for taking time to review! On Tue, Mar 12, 2024 at 12:19=E2=80=AFAM David Hildenbrand wrote: > > On 08.03.24 08:49, Lance Yang wrote: > > The patch reduces the process visible downtime during hugepage > > collapse. This is achieved by pre-zeroing the hugepage before > > acquiring mmap_lock(write mode) if nr_pte_none >=3D 256, without > > affecting the efficiency of khugepaged. > > > > On an Intel Core i5 CPU, the process visible downtime during > > hugepage collapse is as follows: > > > > | nr_ptes_none | w/o __GFP_ZERO | w/ __GFP_ZERO | Change | > > --------------------------------------------------=E2=80=94---------- > > | 511 | 233us | 95us | -59.21%| > > | 384 | 376us | 219us | -41.20%| > > | 256 | 421us | 323us | -23.28%| > > | 128 | 523us | 507us | -3.06%| > > > > Of course, alloc_charge_hpage() will take longer to run with > > the __GFP_ZERO flag. > > > > | Func | w/o __GFP_ZERO | w/ __GFP_ZERO | > > |----------------------|----------------|---------------| > > | alloc_charge_hpage | 198us | 295us | > > > > But it's not a big deal because it doesn't impact the total > > time spent by khugepaged in collapsing a hugepage. In fact, > > it would decrease. > > It does look sane to me and not overly complicated. > > But, it's an optimization really only when we have quite a bunch of > pte_none(), possibly repeatedly so that it really makes a difference. > > Usually, when we repeatedly collapse that many pte_none() we're just > wasting a lot of memory and should re-evaluate life choices :) Agreed! It seems that the default value of max_pte_none may be set too high, which could result in the memory wastage issue we're discussing. > > So my question is: do we really care about it that much that we care to > optimize? IMO, although it may not be our main concern, reducing the impact of khugepaged on the process remains crucial. I think that users also prefer minimal interference from khugepaged. > > But again, LGTM. Thanks again for your time! Best, Lance > > -- > Cheers, > > David / dhildenb >