From patchwork Thu Feb 27 22:45:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Prescher via B4 Relay X-Patchwork-Id: 13995315 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 A2D35C197BF for ; Thu, 27 Feb 2025 22:45:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2E6A16B0096; Thu, 27 Feb 2025 17:45:16 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 248DB6B0095; Thu, 27 Feb 2025 17:45:16 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0E9C26B0099; Thu, 27 Feb 2025 17:45:16 -0500 (EST) 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 E19E56B0095 for ; Thu, 27 Feb 2025 17:45:15 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 85B58161E2F for ; Thu, 27 Feb 2025 22:45:15 +0000 (UTC) X-FDA: 83167206990.08.B931924 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf18.hostedemail.com (Postfix) with ESMTP id 9A1001C000D for ; Thu, 27 Feb 2025 22:45:13 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=AIbWNI1f; spf=pass (imf18.hostedemail.com: domain of devnull+thomas.prescher.cyberus-technology.de@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=devnull+thomas.prescher.cyberus-technology.de@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740696313; h=from:from:sender:reply-to: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=O3O7IJEBWl1XTrIboq+ErJhtutQe+8/VefZCguVdJhY=; b=SYAf1AqWcIEU3c6W91sb7UU97YRFtTQUvzA8FcjFgvMk5rjDuJJCTY1ExtnOrtpQbm9wiB oFuRHbpI30TURdffkd8F/avrKulEiiBZI2P9IwzJnD6fN24GvlcYuFeqUNw2YCEeqRyGDU HMjGHWT7r7B2egtKbtJkklCp9T1D9Ss= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=AIbWNI1f; spf=pass (imf18.hostedemail.com: domain of devnull+thomas.prescher.cyberus-technology.de@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=devnull+thomas.prescher.cyberus-technology.de@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740696313; a=rsa-sha256; cv=none; b=eDHKJTmtTF3T7dMd8sY10TAb8tulwGmToLfkDBcZM6hL4YXEemuV+ixM8rVjNqpUwCyfHh EMAoHl8GA/RmOeI/PP5eiMOaWAsvjEhCmBN9JWbCt+1cWocQ7piWc7COoqPe0eaEA/JwII aGIep8nskPsz4GWGnUszZGcJj+tsCZk= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id E00F25C5B10; Thu, 27 Feb 2025 22:42:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 64B26C4CEE8; Thu, 27 Feb 2025 22:45:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1740696312; bh=5VUaBxuG5jp6oEMwAW0wKmDoN3rdkjGw0TFuNrg+m+s=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=AIbWNI1fPa7uLDSTJHqb+aMq4O2v6EjYleUo/trN0mvO5DnibejG3dT2HjLPaepFh ZnhsEQ30ZZY3pM+5p/thRs9BPloJHBRZCkBn3MrAT3SHlGPFMgHk5Dm7yzRk0LHL0A 09R8dO5+S/4hunZS+zMlzRzgx4xeWNjnnLoIa9ZsiNBDr1zAaa3ySW6AFgtpFvNb2f uHRzYoTjAEDOJrv/dqXNVTK09k2kwBOFcrQLuZVeR3kl9RzFrpDzRocxIx0kM+P6Gm w0SP2VSrM8qfJkHEigWSVyOucD4I05vdGilmSj4S7exw+CdeWNlNC5Jjkgc72cSLp2 M19qkLV2KER4A== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 56AA5C282C7; Thu, 27 Feb 2025 22:45:12 +0000 (UTC) From: Thomas Prescher via B4 Relay Date: Thu, 27 Feb 2025 23:45:07 +0100 Subject: [PATCH v2 3/3] mm: hugetlb: log time needed to allocate hugepages MIME-Version: 1.0 Message-Id: <20250227-hugepage-parameter-v2-3-7db8c6dc0453@cyberus-technology.de> References: <20250227-hugepage-parameter-v2-0-7db8c6dc0453@cyberus-technology.de> In-Reply-To: <20250227-hugepage-parameter-v2-0-7db8c6dc0453@cyberus-technology.de> To: Jonathan Corbet , Muchun Song , Andrew Morton Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Thomas Prescher X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1740696310; l=1238; i=thomas.prescher@cyberus-technology.de; s=20250221; h=from:subject:message-id; bh=DnQm/ufrOp5KRhZift3qcnZk9CLmrzaedzUcrpSfRg8=; b=7/+8mcgFy1AHR3tc4v90RSb52SvqhIl5u321vKgF5hXYbL35rYRH5EJuWaxQKtZBEANJ4FLsE GApQqF2DaSKBUdDMSL2HpAgAZcgZL7SlkW9ZTzWOBBtKUR8eUEF7l+i X-Developer-Key: i=thomas.prescher@cyberus-technology.de; a=ed25519; pk=T5MVdLVCc/0UUyv5IcSqGVvGcVkgWW/KtuEo2RRJwM8= X-Endpoint-Received: by B4 Relay for thomas.prescher@cyberus-technology.de/20250221 with auth_id=345 X-Original-From: Thomas Prescher Reply-To: thomas.prescher@cyberus-technology.de X-Rspam-User: X-Rspamd-Queue-Id: 9A1001C000D X-Rspamd-Server: rspam09 X-Stat-Signature: g3amk7oyxih678bx9b94kht1zmkuc4jp X-HE-Tag: 1740696313-556032 X-HE-Meta: U2FsdGVkX1/PEmz1MtTEXgGcvfPqGlVFo0aSb1+p93CFUec1XRx9U6QJtM4C/3oSvJi8Ddnf9GTtlg6m/bhNdgGzWqoAXRGwPH0b4hAaZq8fKAOC/2/2QxOMXSSH0m/IMLVdwBYFxx8rSw3xYi1wDOqfFbl2Ah2n/ohzHzALgjbNgZT5tBQI3I4SJoikJ8pVsq9gGQML+xmNu1PYTiyeQwr/PHPEYy5d7I7jDo+LVtLvRf4clNmteQsqmPEtYeIUQC5InFLXjTYuTDxT6gG4cWBgJxrCoC9D7NOfLJ65HA94qf5b1Wqw6oEONxt73im8GtDoIZ+GUcn1gLVoVzAWF3xAacYDzoaHQZz/4/9g6uPsperL4DgMC13+ifZGqjouwfbMoipVbZ1VBASHrbx3e0DeZaDmatRJa2bZiwvDQU9wrWulzN/lNEcrjGSrQNlGgaYR/OSgTQ5ikR6ajW24+cyt+XaqOTtRiv23ifUZoW8ruBRmGmdJmm2V1C0k3Iwqt39kmNnmTkLelUyqtMD821zlFusmMGvb3V2IAyA4OlEAWmPP2uZiktZEWYZsi3WiM4+pQxR/fbg+dSGC9vqYrvyS2Zc0g9wa5lHnxneIb9IW1PV5+9glyjKrAfXniTOSPz/xOjfTVX+azfa9DwHnirSWnVGpXFr4dVhLMrw8Cr6b37km8fGngKz6W9Irb+7Bx3O3e6tqUQTeT5/pDwLAKam3YeXP+CsPatTqjSbhDwTRmeCh2FpW36BhQLjUuOsqz6PiguBMCgKSrTkJw1Xoa03XSbgTH3WBp0pFus/8Xch2TchfzCTIcWyAcIyePRWRKc3/VznSY9vUh/F2vNlfHXKZSwT3VXrzOQqhYAlgVy9BTdoPJvK0Xu6EXWlBAGoKQS3rX1vj1Mf1VqxcR42XP57VGT6WGggbqQ0+ZVB+9DSw02evmALheoy3I6nhhBScAwyoMhqhJxoCVFDlifl khRvLTyj bFiMBEtG7XLER4GhYUPQrV19MgQOZse1HmgWS7VNMdaRJmXop6xob7G1aKQIfbxuHmdm5vIud80fYUnD699+GZJqttlPV1wczzIjXzOvLYmASyFUu0uc5+VkbeGCyCCiqwL1xxDavVQvOwnZ+6qH5InFgJaz1ji+HI2mHlAWVwGHQ5qbZShd7SPN+jgQRy4Z85qYmzzzDilpo52ekbXXmWFSr4hLpEkXr21dxNb3XipZl2j7MaXQ6jL+T7fPa0tYL42J5utuzMddEnnqId+lpZse1gnG4IWFRzzG3QMKdqx0uAKy3ZHVzSxbY6gEutYpibTUzIaPV92DFGvfJ2onbVCDHr4oNQRoIulH4uZQAP5SEDdggQxXJDlrTZX4SH+bLOnMQQh1TC9H+0jQ= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000074, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Thomas Prescher Having this information allows users to easily tune the hugepages_node_threads parameter. Signed-off-by: Thomas Prescher --- mm/hugetlb.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 98dbfa18bee01d01b40cc7c650cd3eca5eae2457..373b6ac4a3824555f91ad9895e66f631f6e1ba82 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -3430,6 +3430,9 @@ static unsigned long __init hugetlb_pages_alloc_boot(struct hstate *h) .numa_aware = true }; + unsigned long jiffies_start; + unsigned long jiffies_end; + job.thread_fn = hugetlb_pages_alloc_boot_node; job.start = 0; job.size = h->max_huge_pages; @@ -3457,7 +3460,14 @@ static unsigned long __init hugetlb_pages_alloc_boot(struct hstate *h) job.max_threads = hugepage_allocation_threads; job.min_chunk = h->max_huge_pages / hugepage_allocation_threads; + + jiffies_start = jiffies; padata_do_multithreaded(&job); + jiffies_end = jiffies; + + pr_info("HugeTLB: allocation took %dms with hugepage_allocation_threads=%ld\n", + jiffies_to_msecs(jiffies_end - jiffies_start), + hugepage_allocation_threads); return h->nr_huge_pages; }