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 0348DC3DA6E for ; Fri, 5 Jan 2024 23:18:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 63F816B02CF; Fri, 5 Jan 2024 18:18:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5F0126B02D0; Fri, 5 Jan 2024 18:18:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4698B6B02D2; Fri, 5 Jan 2024 18:18:34 -0500 (EST) 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 35FB56B02CF for ; Fri, 5 Jan 2024 18:18:34 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 082AAC099B for ; Fri, 5 Jan 2024 23:18:34 +0000 (UTC) X-FDA: 81646823748.25.DA3D9BA Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2079.outbound.protection.outlook.com [40.107.94.79]) by imf25.hostedemail.com (Postfix) with ESMTP id EC4BEA0002 for ; Fri, 5 Jan 2024 23:18:30 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=HUYFifdo; spf=pass (imf25.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.94.79 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1704496711; 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=LX1xCL5AYQfIQ6TWOL0LCfCHzL9P/eJiBRaZQKlLnZ4=; b=qTL3XGwYqaw32/ZzjRkvjEfnbflkY9Xk/pHxLe7wyk+o03lJ+WR1vzmNrBlDMWBKDAoS3e Iw/1P+pfknq2cSd8Q9UEDboXmLWfc3LyndspyySpnTmfG9D8vCKdQVflVspbI+odr8xcnc OEyFEGJ/BNCGRabRSQ3Wk7RquKFxB9k= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1704496711; a=rsa-sha256; cv=pass; b=lvmGibY3oLy46EZHwOuILZhDmHf8Yx5gb/D3t6J7SvzIsNlyAgh2BXtO76vUlpdwxV3wz/ +piPSOhRHWzatW+m7XH8b3Absll7Rd7OstwdEO+J6oi4mBJk4LWXcZbgN1LcHen9gSgXIO oWW/OBq5YuGW3DPyeQ6l1boXxuYGHlc= ARC-Authentication-Results: i=2; imf25.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=HUYFifdo; spf=pass (imf25.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.94.79 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nZfGwgaA/KZWnEKXkYIbS4z10Q5AAc+p1aknM2rZrYsDoAjnUyA4EbPkNqQ4HiZMbJXVqxSHROvce/PMYypGEg1jYFx8ewra1TR6fyUu2SfBpCy+ajLCX1OgSK/Eu5qYFWDJUKdNlmACUpXFx3+mUb6TDyIe2Gi9731X1yxaz3w7UTygnWiyc6jZYYzzBMLbRkQWsDCLf495Pt2RxsU7sQHBUv0WTA29wcOFKh4bgoO6a06qmM+nwg0w07VuY2ZqvdPb7qvAl07+eaoHism+mabH+Uf/vMUkCsX+sxf+050w5R43X/hhohSv5uuxu6C4kaoHjsD9Pe7VsH9PrYfCSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LX1xCL5AYQfIQ6TWOL0LCfCHzL9P/eJiBRaZQKlLnZ4=; b=JWMEN6UBjbF83cP/MRiMVhDgpEGTUmm6Zd63aOhc+VudLRBw8Iwy1kChCjIOIyUukUGP1iy+ac5GeKZYYJc7doaW8ZJWn/fujpqIdRuEvlyLm+MaHhLJGQ5b7pcOzr7USfTYvhQQU3okEotzoxnXqZ7qqLPFN8wWQLVmiLZyLNu4L1E7aaDqwKJmE6Wqz8NG3IH4IBJo12sIHdnuXT8Sy9kFN8PRdlHXPKYc71bL1UtxUqY9sB2OBksfqi0KBzN+o1YItLJYnfHXo9oZ1echa0zhex+xo31ay2fwIsMFP/CuXEcfwvaSyxhhRIvNFqR7KMK8sDFle7TiVi6KPzYZBA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=arm.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LX1xCL5AYQfIQ6TWOL0LCfCHzL9P/eJiBRaZQKlLnZ4=; b=HUYFifdo9eJQ0ERSnGfEIRywmcD0XPyVtQJ0JvcEPrOTMxJdHrd+0Tnzg3jwHHBEs5UEjshvtsFryHAg/QyUxLb+RQ+D4WTLL+UZ6AF/P79MPAH8JCJakuGiw0A28og5bWZFOWtnJqJl4/AC6MPL8lauWT6KlP9O9v1RW8yc7XWuoiDf8vDefN2JAiqalGUNVZ+E2oe+y6UDgTYZg5+2J5ZqcQTIOHipOmXsUHRMioUGgy+rJaoj8O3uXE8z/jnbWp7OSUYPozo5S9HzawgUg+q9DXvEKWUETiSb8LqmogqBYYwfT/wVgcisz7Jyec5KNuc03OWz5T1TsFlPvXHP2A== Received: from CY5PR10CA0009.namprd10.prod.outlook.com (2603:10b6:930:1c::17) by MW5PR12MB5683.namprd12.prod.outlook.com (2603:10b6:303:1a0::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.15; Fri, 5 Jan 2024 23:18:26 +0000 Received: from CY4PEPF0000E9D1.namprd03.prod.outlook.com (2603:10b6:930:1c:cafe::b4) by CY5PR10CA0009.outlook.office365.com (2603:10b6:930:1c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.16 via Frontend Transport; Fri, 5 Jan 2024 23:18:26 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by CY4PEPF0000E9D1.mail.protection.outlook.com (10.167.241.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.9 via Frontend Transport; Fri, 5 Jan 2024 23:18:26 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Fri, 5 Jan 2024 15:18:13 -0800 Received: from [10.110.48.28] (10.126.231.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Fri, 5 Jan 2024 15:18:12 -0800 Message-ID: <64d876e2-a181-4685-83f6-989cb5f3aa7e@nvidia.com> Date: Fri, 5 Jan 2024 15:18:12 -0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH v1] tools/mm: Add thpmaps script to dump THP usage info Content-Language: en-US To: Ryan Roberts , William Kucharski CC: Barry Song <21cnbao@gmail.com>, Andrew Morton , Zenghui Yu , Matthew Wilcox , David Hildenbrand , Kefeng Wang , Zi Yan , Alistair Popple , "linux-mm@kvack.org" References: <20240102153828.1002295-1-ryan.roberts@arm.com> <29007216-8A9B-4CA2-8A87-EB33E338CBA7@oracle.com> <84b43094-9b16-40a5-94e8-6dd4e859a01f@arm.com> <0d06b0fd-01f3-4a93-811d-f39c0b326b23@arm.com> <26dc2b09-b298-4fb7-81e1-4bfba6afaff4@nvidia.com> <146a88e6-a647-4b8f-8472-af3ff7ae6b93@arm.com> From: John Hubbard In-Reply-To: <146a88e6-a647-4b8f-8472-af3ff7ae6b93@arm.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000E9D1:EE_|MW5PR12MB5683:EE_ X-MS-Office365-Filtering-Correlation-Id: 36fbf579-e97a-43ef-0213-08dc0e449ef1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TK0goqU5j9aU0YXLYXmS90x+/jT/T+O3RGAbaWzXeKWnYXSC5qMEg+J57LRyLlTFXUwUvN3sM29pNMpgje4V+6vRm07a6Iu8ZnIvDmGUry+fZ/oIH2KiqlU2znkmldo9vzxBxGLZ6dI80OyBn3h//EANWKvxHuDvORoWoExDIKhu7H+RegGHEKRcmceFFNtgycAaEHfLFzV7uj5MWwYQbL+Bwn7dOT0hYshN28yMj3iLgCb2jopxKKdt59MqADF2DDbExOZIul8rNB57cINuc4FKJfTBZsChbcbvTIHrAsFtQyd3jAH8K+MVeZrwR+o7vm6n5MxiBh8K3yPwmP02gTvgOAFR3z8YoXgZSsIOsRRX6RzBvmBmBZvAESGmlXr35ojJPFzikl80+QOV884Iq/QTEEa4f5KPwjyKwf4KzOy8Qd+/FcNCZsXAFbSSadlr/DVRNPmVSNmx77c+yvjzLeIysYlMlHqHM8iqHFFKUDE+wlh2rkPnZf/8VoxSYIfWXVSl11sAmf8JmJ8hh+FKiw6p8FjEJGe6CJO7yA+n9oHYXj2RlZR2RtlK6aLtIFOngF6t/z4ptntoxLcVHyE/M7wUGfTmPJiEbxQGveHtkn+OqusuS3zn8A1e+2ShlukPgtVHX43GxBFCRg1XxSkw+lfy88rB7j5pH7r2k2SXNISL0WvJgCtQJX1YDVKfPJbFDEKi3RQStjcnXT89K5tJoW1ZZ2tQtbXcx2wsBAFX1LoeB1HpcOzvcQwJ/5yxzMU8YwphqSQhv4cx8+wyfDsUow== X-Forefront-Antispam-Report: CIP:216.228.117.161;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge2.nvidia.com;CAT:NONE;SFS:(13230031)(4636009)(39860400002)(136003)(346002)(376002)(396003)(230922051799003)(82310400011)(186009)(64100799003)(1800799012)(451199024)(46966006)(40470700004)(36840700001)(40480700001)(40460700003)(31686004)(2616005)(336012)(26005)(426003)(53546011)(478600001)(36860700001)(36756003)(86362001)(7636003)(31696002)(82740400003)(356005)(2906002)(41300700001)(47076005)(54906003)(83380400001)(70586007)(5660300002)(316002)(8676002)(16576012)(70206006)(16526019)(4326008)(8936002)(110136005)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jan 2024 23:18:26.5521 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 36fbf579-e97a-43ef-0213-08dc0e449ef1 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.161];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000E9D1.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR12MB5683 X-Rspamd-Queue-Id: EC4BEA0002 X-Rspam-User: X-Stat-Signature: sfkdfucm954efbrmff4o99mi3s94susb X-Rspamd-Server: rspam03 X-HE-Tag: 1704496710-910274 X-HE-Meta: U2FsdGVkX1+gockfTok1NMS3byhmMeVpeLGotUXdpy4GDxaMo4dCZxIWRMgTaDGNsdoGh9NXLeXChZWz9rxRcXk5qEm0MCbWYrIVxSzl7QaP33yVhvphvoQmhGcLxlxPdfbo29/D4netGyca60zeKa2JjTgZ5MxNU6k1LsqqjZEY8TazG3tiHQWtv3b0lGekJq2r8l1EPk2Eki1JLoBiwI4cSv6QRmU3gIlRwamBt4fe/qxGp1S055fk9SCWCiVnmr8BooMApD4Fwr/2ibxm4mqdCpObM+uDSXvm+YdN4s7RlMZSIzWf5T4efQfmyt2ruUNMK8AJKwvU/1S77HEXXy+hxWP5rOS4JvCNb8cafaW2mAHSmQQYfw/ryQcLjM7cyAGBlIZ7LwwtxbPoZiUtca+PsjSQD1RdGDISjfnvMoCHeZmiORNpqMCiTC8aIiCuBS79rUEFbiGG9vgn9JiOvm0KN6BRPmycnoQsC0rC76QAwdS8PEEe5e80wrl3qsTya9I3AQYNpk+CJYSkC4gfItkiySOFq7BNmKeYoWplqPHFAmsWQXfXzPNfYxccjXcyfuhh0vRk4/mRZYhxkxrlo80SHgy3cTCi20y2wDQnP/zFM93rz4RQQqZqNjk1r/Kf/rFEfqrLQTUXUPc4xstOUTkXNcIeIlfRjd37xnnyMXY6cFywg1jGsdhB3I1fWzBenVHjpMgUUSzXZ5yZtU4zDV3wPD+tAKZQx3Wx/tHqVFqTfyHG2RhtkYBBZZR9S8r+/R+I9fSN5z7v+4kmFrnMiRS388kvrg/IBkQMrUUn6CIXOXZhdnFs6WlZdjr2DZTzZqdSKF++XZRYqyB9I2VYEPfrtQUIrWkOyjLeMP0peyj9Jb+HyicZ7aDFE7fYAUNSyvQWxgxEsmLloc3xJtL9HLc8UaSoDYFd4jufBqstz4cPng5/8Hi+sBjFcxyi21R0IfqUabnIJUBPPjLplEn Os5jqkG8 VnIDeLiB9bUI1T+wNqTz9KfrMvnMC16EDegpmA4dXhVcYCpHElxK7kZtcDL0wHVsj9wbboliEMTavDvC6QQWvt6ZVeNEr+p7rOFA6aUP51zaFNhv2zPBiOoJAR4Fa6XV6cYKofpzRXXBI98cTComxgTmLSIx+ez0gMcMM//JZiZccGz+qrxgpzFwMJc+NBx3dkFx3Sb7Ie6WfAmFbgkFnzs7F7rbn9GBdnWdMpA8/ByBSzJ+AcRc+Be0Dr4yzHBTwA+EN2OfnK4qT6X67eUvdy8eFwzOnA4cTxNqYsHfhAIKfTt/p66edU+RWIu4BF7MMEIiytQwEIij8b50oFbp/f/ReYk+ibZ4eIQP/+yIm0m1IG5R15J6Tp1yuQVgT2gQJLDhKXp2SzS2tJzXkjuugqGxkiAgKzv1NlkiLR++umSE07gg= 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 1/5/24 00:35, Ryan Roberts wrote: > right aligned with 0 or ' ' as the pad? I guess ' ' if you want it to look like > ps? But given pid is the first column, I think it will look weird right aligned. > Perhaps left aligned, followed by colon, followed by pad? Here are the 3 options: I will leave all of the alignment to your judgment and good taste. I'm sure it will be fine. (I'm not trying to make the output look like ps(1). I'm trying to make the pid look like it "often" looks, and I used ps(1) as an example.) > > 00000206: 0000aaaadbb20000-0000aaaadbb21000 r-xp 00000000 fe:00 00426969 > 206: 0000aaaadbb20000-0000aaaadbb21000 r-xp 00000000 fe:00 00426969 Sure. > 206: 0000aaaadbb20000-0000aaaadbb21000 r-xp 00000000 fe:00 00426969 > > My personal preference is the first option; right aligned with 0 pad. > >> >> b) In fact, perhaps a header row would help. There could be a --no-header-row >>    option for cases that want to feed this to other scripts, but the default >>    would be to include a human-friendly header. > > How about this for a header (with example first data row): > > PID START END PROT OFF MJ:MN INODE FILE I need to go look up with the MJ:MN means, and then see if there is a less mysterious column name. > 00000206: 0000aaaadbb20000-0000aaaadbb21000 r-xp 00000000 fe:00 00426969 > > Personally I wouldn't bother with a --no-header option; just keep it always on. > >> >> c) pid should probably be suppressed if --pid is specified, but that's >>    less important than the other points. > > If we have the header then I think its clear what it is and I'd prefer to keep > the data format consistent between --pid and --cgroup. So prefer to leave pid in > always. > That sounds reasonable to me. >> >> In a day or two I'll get a chance to run this on something that allocates >> lots of mTHPs, and give a closer look. > > Thanks - it would be great to get some feedback on the usefulness of the actual > counters! :) Working on it! > > I'm considering adding an --ignore-folio-boundaries option, which would modify > the way the cont counters work, to only look for contiguity and alignment and > ignore any folio boundaries. At the moment, if you have multiple contiguous > folios, they don't count, because the memory doesn't all belong to the same > folio. I think this could be useful in some (limited) circumstances. > This sounds both potentially useful, and yet obscure, so I'd suggest waiting until you see a usecase. And then include the usecase (even if just a comment), so that it explains both how to use it, and why it's useful. thanks, -- John Hubbard NVIDIA