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 116D4D5CCA6 for ; Wed, 30 Oct 2024 12:51:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 37EC98D0003; Wed, 30 Oct 2024 08:51:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 306A88D0001; Wed, 30 Oct 2024 08:51:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1D0368D0003; Wed, 30 Oct 2024 08:51:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id EF2708D0001 for ; Wed, 30 Oct 2024 08:51:07 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id B247F120BDB for ; Wed, 30 Oct 2024 12:51:07 +0000 (UTC) X-FDA: 82730253018.30.53EDFC4 Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by imf10.hostedemail.com (Postfix) with ESMTP id D38CBC0023 for ; Wed, 30 Oct 2024 12:50:52 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei-partners.com; spf=pass (imf10.hostedemail.com: domain of gutierrez.asier@huawei-partners.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=gutierrez.asier@huawei-partners.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1730292547; a=rsa-sha256; cv=none; b=GGCC3hCyLVH2XuXGNucmO6ZsvWeuzr+LcBU78hp06Db0n+eqq7iIJQqq35HXe0tMhDQQ5W SMTcDCgQkuR+xIazo9MIUQbIGnmAKGzVRyVCQCrjaSVpM4YBXIXh14ctmeCW/MslwhiPSq lhx7wh2aLTkYEw38LoRsw0erRa5xpJo= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei-partners.com; spf=pass (imf10.hostedemail.com: domain of gutierrez.asier@huawei-partners.com designates 185.176.79.56 as permitted sender) smtp.mailfrom=gutierrez.asier@huawei-partners.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1730292547; 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; bh=Zuz+gzHc/mYYaMvPGAz+IYgE1UzT8JXjZcLjJDAvB9o=; b=MByDOSy/ruRmgUcVbB7axN1HMnJOGM7tVNM4UJpIBEkRr2agNryoR6Q12ZcJf2955WY4fB cFnEWbaLfaBAMOwuLuk/aKGTYYUm0HsVEZEPnP9gXj/QsHcj4TPC1NYiH0vl3xTuiFnzIp 9ZYOU2uMGmrsPprlHhrBcN05d4b6Bwc= Received: from mail.maildlp.com (unknown [172.18.186.31]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4Xdn1G6lGqz6GDn7; Wed, 30 Oct 2024 20:46:10 +0800 (CST) Received: from mscpeml500003.china.huawei.com (unknown [7.188.49.51]) by mail.maildlp.com (Postfix) with ESMTPS id 0915F140429; Wed, 30 Oct 2024 20:51:02 +0800 (CST) Received: from [10.123.123.154] (10.123.123.154) by mscpeml500003.china.huawei.com (7.188.49.51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.34; Wed, 30 Oct 2024 15:51:01 +0300 Message-ID: <770bf300-1dbb-42fc-8958-b9307486178e@huawei-partners.com> Date: Wed, 30 Oct 2024 15:51:00 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH 0/3] Cgroup-based THP control To: Michal Hocko CC: , , , , , , , , , , , , , , , , , , , , , , References: <20241030083311.965933-1-gutierrez.asier@huawei-partners.com> Content-Language: en-US From: Gutierrez Asier In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.123.123.154] X-ClientProxiedBy: mscpeml500003.china.huawei.com (7.188.49.51) To mscpeml500003.china.huawei.com (7.188.49.51) X-Rspamd-Queue-Id: D38CBC0023 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: w96439d6isf7ruq5cjkxe5o7qibboaf8 X-HE-Tag: 1730292652-165280 X-HE-Meta: U2FsdGVkX1+68ShAeECZ9NmVaoRobcRz4JxZv6gEXee5su9FhI4RQlxWBjfUJg06YIGHuJ3UMRhSQyCdKHYEXN5zeroIpNsQ+E/E8B31MeXFtSDf7nnqkyHdevlnN4+U6F/9mrW5MDb2RLZD5ovOO+Lg/XSavBAxjC403G/jGIz9hWudflk7cpp/f0LBGy0ThUzYcF5pOucRECxsDlT/UpX76N7r8tCWfp93ukjd2i9zX5UOobWpMcAiE41EIzm8BoAmyrJOksEHJvKufIYGWvBoHGwtdN8vQ42PBkJwgWIWd2ng2DgkuPOAgMH3EzwaJnXOBsfACs+c4oYcGLg45ceHtNZXib4XLtAH/HD6rJCPWyxC/C4SMvnCPD4Hg4SKjr/TxsE5M0WCJA+vzALqk3tQ8KXqvTSCbAERA90nd/vRaGXhvLuM8dX72eTBqXKUIL/0BN1j9oi08eqgUZo8DzoMj/Bm0VQlR/RWrGXW1Tg/Cu5bmG/Q0IbkA4LflQ1UGJ+wrTzeIS5LZfC4zSFUCGjvxSKftn7ZStTbeHk7o4GQAeyHHj7R1NZDCXwxt8TLOKWHXINHGHedEg5noQsgLuchuWuXs1adOakbdT6SEtsUiGeeAZHuKNZvItYKdQTO/DlMcywkgNlce7xrBjfRVzqvmdO9nDdV0JkKMriGuo2JK3N/0vRQc3sCY2A6AFh3QGrmWIU2D1Wtlu9sUZ76Gh5TBz+HciWyVMlACF2iXci1KeFCaWNi6MDte7qJU0Fq0x2fNsUDwSod4BfsJQBNmOmkY9Hr14qakp6qG4mwjUXYLmxOTyVKwp5N2T90r4ZJlGxjTi4oeGrxD3kSZF/kWtecfyFRVcwM372jMOa9I85ccWS246uheX4nYCvqxCb66k3YLNs5T+Q41gJagxD0r9q7UiFiSEo19DpA6N3h8bFw8wDOrZpTIzj3suSaNTTm9mIrEbBCEgkuid5J9tk x89133ic dBfjTEoUK1i6NUJGqnPjarqlwQYJ8NeetchYb0myLQj9FvPv1s7y1tGYQNWC4mi00hjh8bLMbhLN2ITU6wOZnfCxQvPY8zxEXmfKsseuve/esFpPd0RTvthTU3f6Dp0Oo5mS5xFYcyis2QEcX8wVKEJtQf4lS+N5kk5Gr92xMzfxQdVm8fGFITZWCEGFlwMwXZHdGoySMjnKtL1456xi2wZW23SY0OF//bN0bmBD2+ME0jOI= 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 10/30/2024 11:38 AM, Michal Hocko wrote: > On Wed 30-10-24 16:33:08, gutierrez.asier@huawei-partners.com wrote: >> From: Asier Gutierrez >> >> Currently THP modes are set globally. It can be an overkill if only some >> specific app/set of apps need to get benefits from THP usage. Moreover, various >> apps might need different THP settings. Here we propose a cgroup-based THP >> control mechanism. >> >> THP interface is added to memory cgroup subsystem. Existing global THP control >> semantics is supported for backward compatibility. When THP modes are set >> globally all the changes are propagated to memory cgroups. However, when a >> particular cgroup changes its THP policy, the global THP policy in sysfs remains >> the same. > > Do you have any specific examples where this would be benefitial? Now we're mostly focused on database scenarios (MySQL, Redis). The main idea is to avoid using a global THP setting that can potentially waste overall resource and have per cgroup granularity. Besides THP are being beneficial for DB performance, we observe high THP "over-usage" by some unrelated apps/services, when "always" mode is enabled globally. With cgroup-THP, we're able to specify exact "THP-users", and plan to introduce an ability to limit the amount of THPs per-cgroup. We suppose it should be beneficial for some container-based workloads, when certain containers can have different THP-policies, but haven't looked into this case yet. >> New memcg files are exposed: memory.thp_enabled and memory.thp_defrag, which >> have completely the same format as global THP enabled/defrag. >> >> Child cgroups inherit THP settings from parent cgroup upon creation. Particular >> cgroup mode changes aren't propagated to child cgroups. > > So this breaks hierarchical property, doesn't it? In other words if a > parent cgroup would like to enforce a certain policy to all descendants > then this is not really possible. The first idea was to have some flexibility when changing THP policies. I will submit a new patch set which will enforce the cgroup hierarchy and change all the children recursively. -- Asier Gutierrez Huawei