From patchwork Wed Nov 29 06:54:36 2023
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Patchwork-Submitter: Meng Li
X-Patchwork-Id: 171113
Return-Path:
Delivered-To: ouuuleilei@gmail.com
Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp161504vqn;
Tue, 28 Nov 2023 22:56:11 -0800 (PST)
X-Google-Smtp-Source:
AGHT+IHHNONbzLTps4GZ0+Uly0lKiP/kxwqPzbIoUgU9rn8LAc6gGPDDdIBePG52rfdpLoPW2xRC
X-Received: by 2002:a05:6830:719f:b0:6bf:1f5f:ed18 with SMTP id
el31-20020a056830719f00b006bf1f5fed18mr23189965otb.1.1701240971531;
Tue, 28 Nov 2023 22:56:11 -0800 (PST)
ARC-Seal: i=2; a=rsa-sha256; t=1701240971; cv=pass;
d=google.com; s=arc-20160816;
b=CDyYOlAWJG+A37SqHqTguYTzS2wHiQ/Wp2ioy66OwEHzqEspKPLZWlVj+SaClKwgQl
QFsA8Ero9h5xH99Y/KnH/Ek5wCn/4VRD0JOT1UOhXXVH+K8QFpR8NKBLk263u2fz2P3f
1Cwgcbqe9wq4Gir7j3if4jj49BU/Sair7UVOAiCsPjEguLL52YE0cALPkoM57l0mZaio
ibRPq05mcV2F86Q6iiJAmz0C/F13jF+z1xuA7d9jVEj3Y9UKztrzG+2oh1izYkNWgWqe
aYjB/w7hFe88FAve5onSjFumG6Ed9Sssm7dh7R/jYhGSprqIamLCWirwjfIiI25KTKE3
CvHg==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
s=arc-20160816;
h=list-id:precedence:content-transfer-encoding:mime-version
:references:in-reply-to:message-id:date:subject:cc:to:from
:dkim-signature;
bh=M+Hf7usC0hQZ6XEfTNBCV+zk7l8w2H29ZawyubckUuM=;
fh=px4bRiBuq3I9SXanjlkRNLIg6oMFdG8uo3HGDz2F7II=;
b=ANIvibJoVOI+SA0eW8qfh57HHC1oAgecpk+Hw04w8YVpgIUlcjI0AG9FRnA82RGKBT
1ZqGa3o34aRmSrTWUYBMgDD0idZC9q1ZKWyfzUU0ObySlcCu9ac6vwdujth+OL1xSSqi
jejmHoO+ck/Z+0f4ALBLF8cj23IxC3pqXi/oU/IhDEw9iFQYWo/j+dk4iLeJKg4u6OQb
wCHE/86dNiR50sJOX+PpPYI0cBAzUkiRzWlHl9Fun8qYtqKBHWbQFmhpA838brSeMOGy
RH9P1DpQqTFFgFTmdifEK2lBmhvi9X1HXEP9Ml7DQr7nVPvxuYc8dl4RfVzix02TZtTs
0/lA==
ARC-Authentication-Results: i=2; mx.google.com;
dkim=pass header.i=@amd.com header.s=selector1 header.b=2SMkVkmr;
arc=pass (i=1 spf=pass spfdomain=amd.com dmarc=pass
fromdomain=amd.com);
spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org
designates 2620:137:e000::3:3 as permitted sender)
smtp.mailfrom=linux-kernel-owner@vger.kernel.org;
dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com
Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3])
by mx.google.com with ESMTPS id
p6-20020a634206000000b005ab53fee611si13745774pga.423.2023.11.28.22.56.10
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Tue, 28 Nov 2023 22:56:11 -0800 (PST)
Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org
designates 2620:137:e000::3:3 as permitted sender)
client-ip=2620:137:e000::3:3;
Authentication-Results: mx.google.com;
dkim=pass header.i=@amd.com header.s=selector1 header.b=2SMkVkmr;
arc=pass (i=1 spf=pass spfdomain=amd.com dmarc=pass
fromdomain=amd.com);
spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org
designates 2620:137:e000::3:3 as permitted sender)
smtp.mailfrom=linux-kernel-owner@vger.kernel.org;
dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com
Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0])
by lipwig.vger.email (Postfix) with ESMTP id A814280B1809;
Tue, 28 Nov 2023 22:56:07 -0800 (PST)
X-Virus-Status: Clean
X-Virus-Scanned: clamav-milter 0.103.11 at lipwig.vger.email
Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
id S235013AbjK2Gz6 (ORCPT
+ 99 others); Wed, 29 Nov 2023 01:55:58 -0500
Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52916 "EHLO
lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
with ESMTP id S230009AbjK2Gzn (ORCPT
);
Wed, 29 Nov 2023 01:55:43 -0500
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
(mail-co1nam11on2082.outbound.protection.outlook.com [40.107.220.82])
by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D165F1FC2;
Tue, 28 Nov 2023 22:55:40 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
b=Tr90/W/b2BvIDv4QvwfjmAm3Mja3ckdsSkjDFx8swRqWOG59scQueTNN6xpJHB+ohv92IEwSd4Mqx4Jq8AR5JWaJAUw6hoqxYkk968Wj5HT+JFjumeyf5XEs4Vxd7X3F93nsgMMkv0m9XO3V4erdb9mHzXD21GM8zoGjZ0FdvnpIH7jCavY7nrogvyBDmfRN3QJ0O3fmT3pEezeEPiTjN234fxTb2NU5T+1RATMOVpcVBo4Iq2G68fzCcOEC9ad/aZFM2fnFIr/D8jkE+BBmfXZXaG/X40muoHH2DIOtjuOD5lYKRnymhYAi6A+j1CKkjnuym9HwNDYE3VF3BWHCzQ==
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=M+Hf7usC0hQZ6XEfTNBCV+zk7l8w2H29ZawyubckUuM=;
b=UwN5DkSFmq6lzuw7s4dL1b/zNOy4ATfxK5ZVwR8Fu9UKbczFOn7dLI35uFrWKoZdE55jpCoqu/0DzaUM3zfA7SaKw2lZEwM9x8oTIUqv+y/ll7KBNXsXKp+OAfy7QByv5c8TYeFxaTNiubSyhToQwbW0u5SEwmU+ZZkQNHci/LniM0ohZDgcDXqX4QtnXvNiTsToWtnBrn78J4ItQyJjL0QgDPXdY5eIpElBvdisTVMlMy4E+NCKWnieyInWEOYyY1GtPLUzu6FH/2wyEdR78uPbdOmTdp2b87dmvFqzUcCamBb5qHranV+1uht/k3G/QMpxfItfdYmRfiWF4dtRAQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is
165.204.84.17) smtp.rcpttodomain=intel.com smtp.mailfrom=amd.com; dmarc=pass
(p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;
dkim=none (message not signed); arc=none (0)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
bh=M+Hf7usC0hQZ6XEfTNBCV+zk7l8w2H29ZawyubckUuM=;
b=2SMkVkmrmJBFXTgzlciwQLzt5IqL/fvaKljIdtp00K1AQdBocudDIhFPFiVadvSppS9mXuu3OOsBda9BMOkSlWRfkEFcreZg+Y+dmjeWcSU+7bdj7MdEAFEvnbk0aEC1Jmqh8Gk+ci2QdbJ32jqGC2tk64elY6AqIXm9+fb7ipo=
Received: from PR3P192CA0026.EURP192.PROD.OUTLOOK.COM (2603:10a6:102:56::31)
by MW3PR12MB4459.namprd12.prod.outlook.com (2603:10b6:303:56::22) with
Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7025.29; Wed, 29 Nov
2023 06:55:37 +0000
Received: from SN1PEPF0002BA52.namprd03.prod.outlook.com
(2603:10a6:102:56:cafe::d) by PR3P192CA0026.outlook.office365.com
(2603:10a6:102:56::31) with Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.22 via Frontend
Transport; Wed, 29 Nov 2023 06:55:36 +0000
X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17)
smtp.mailfrom=amd.com; dkim=none (message not signed)
header.d=none;dmarc=pass action=none header.from=amd.com;
Received-SPF: Pass (protection.outlook.com: domain of amd.com designates
165.204.84.17 as permitted sender) receiver=protection.outlook.com;
client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C
Received: from SATLEXMB04.amd.com (165.204.84.17) by
SN1PEPF0002BA52.mail.protection.outlook.com (10.167.242.75) with Microsoft
SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
15.20.7046.17 via Frontend Transport; Wed, 29 Nov 2023 06:55:35 +0000
Received: from jasmine-meng.amd.com (10.180.168.240) by SATLEXMB04.amd.com
(10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Wed, 29 Nov
2023 00:55:26 -0600
From: Meng Li
To: "Rafael J . Wysocki" ,
Huang Rui
CC: , ,
, ,
Shuah Khan ,
,
"Nathan Fontenot" ,
Deepak Sharma ,
Alex Deucher ,
Mario Limonciello ,
Shimmer Huang ,
"Perry Yuan" ,
Xiaojian Du ,
Viresh Kumar ,
Borislav Petkov ,
"Oleksandr Natalenko" ,
Meng Li , Wyes Karny
Subject: [PATCH V11 6/7] Documentation: amd-pstate: introduce amd-pstate
preferred core
Date: Wed, 29 Nov 2023 14:54:36 +0800
Message-ID: <20231129065437.290183-7-li.meng@amd.com>
X-Mailer: git-send-email 2.34.1
In-Reply-To: <20231129065437.290183-1-li.meng@amd.com>
References: <20231129065437.290183-1-li.meng@amd.com>
MIME-Version: 1.0
X-Originating-IP: [10.180.168.240]
X-ClientProxiedBy: SATLEXMB04.amd.com (10.181.40.145) To SATLEXMB04.amd.com
(10.181.40.145)
X-EOPAttributedMessage: 0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SN1PEPF0002BA52:EE_|MW3PR12MB4459:EE_
X-MS-Office365-Filtering-Correlation-Id: d0ab6f56-5cce-4a4a-740e-08dbf0a83048
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
7tnB0OY9rNwM0Q+mBvebVVe8vxOAmCoUEdGvMUKlWEdUETBO386/4nz/wgpbjfohSIvHi/Z+NrohCOWP5QR7daS6NoFdRaAWlvgGRnqaznEMOZHhKRAhJeg6OFDEPyAmli6bCIT50t5GbEkgXulRg8aD6hL/EtpZeobl6uFIJH1QbFtIEGanMggBDIsszO6b2QMEuDKfCtJNgx4zKeIvC21M0nhcfZYTkhFmtHkoiXsmaw+sM3sYy0pD9N6vIHHy5byUcUvlCtvI9vRPQEyG2+2aWK5mOR0DuCGplvGG8cl2CIbkoJWUQTXAHe4XAWjpDOv75uPUwtt4rvLhaTIEsmLtefUsYke97HSdSYZ5toV22QGSH7PSqNm9QRsloxUy8j/eG4RX74WfD2IqTi79/LB7e3n8l/af3ZbC7YFaLuBbggSbVP1GutduXWPax8mHV/bf/ErnzT/1VaYPi2lK/r0fiSHXJJsCTsWVgoi2qk6s7I79dG2K4UNseA7/bgi9lDZLDSc9hnQfCiXdreiU/Uz494HHG+ov+epWYBG9+w5968i9Wc0/2YMjs/CgSMr4oteaxZulezavITm2tcNjjNw72OTWhXz1PYnAQ0Hi9kP0ziCp2H5r+SwboaJUKfw7cw5IECRbE8w+j8yTNcTF/+IX5kiliyKMzf8gdR5h9kwhnfB3l5X7r1VFdKJEl/4Yb3TO2seiK123rEolXmQTjmMjK8xCks2Dh7mmYPTVu9aiYYJzLK1Us5hErB+8H8tD8gj5rmahS5LDDfjLOkauxQ==
X-Forefront-Antispam-Report:
CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:SATLEXMB04.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(346002)(376002)(136003)(396003)(39860400002)(230922051799003)(451199024)(64100799003)(186009)(82310400011)(1800799012)(36840700001)(40470700004)(46966006)(40460700003)(316002)(6636002)(70206006)(110136005)(70586007)(54906003)(336012)(36756003)(16526019)(6666004)(426003)(26005)(1076003)(2616005)(478600001)(82740400003)(83380400001)(356005)(81166007)(86362001)(36860700001)(7696005)(47076005)(40480700001)(5660300002)(7416002)(2906002)(8936002)(41300700001)(4326008)(8676002)(36900700001);DIR:OUT;SFP:1101;
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Nov 2023 06:55:35.7658
(UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id:
d0ab6f56-5cce-4a4a-740e-08dbf0a83048
X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d
X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp:
TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com]
X-MS-Exchange-CrossTenant-AuthSource:
SN1PEPF0002BA52.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Anonymous
X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR12MB4459
X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED,
DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,
MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE
autolearn=unavailable autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email
Precedence: bulk
List-ID:
X-Mailing-List: linux-kernel@vger.kernel.org
X-Greylist: Sender passed SPF test,
not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]);
Tue, 28 Nov 2023 22:56:07 -0800 (PST)
X-getmail-retrieved-from-mailbox: INBOX
X-GMAIL-THRID: 1783880453181027673
X-GMAIL-MSGID: 1783880453181027673
Introduce amd-pstate preferred core.
check preferred core state set by the kernel parameter:
$ cat /sys/devices/system/cpu/amd-pstate/prefcore
Tested-by: Oleksandr Natalenko
Reviewed-by: Wyes Karny
Reviewed-by: Mario Limonciello
Reviewed-by: Huang Rui
Signed-off-by: Meng Li
Reviewed-by: Perry Yuan < perry.yuan@amd.com>
---
Documentation/admin-guide/pm/amd-pstate.rst | 59 ++++++++++++++++++++-
1 file changed, 57 insertions(+), 2 deletions(-)
diff --git a/Documentation/admin-guide/pm/amd-pstate.rst b/Documentation/admin-guide/pm/amd-pstate.rst
index 1cf40f69278c..0b832ff529db 100644
--- a/Documentation/admin-guide/pm/amd-pstate.rst
+++ b/Documentation/admin-guide/pm/amd-pstate.rst
@@ -300,8 +300,8 @@ platforms. The AMD P-States mechanism is the more performance and energy
efficiency frequency management method on AMD processors.
-AMD Pstate Driver Operation Modes
-=================================
+``amd-pstate`` Driver Operation Modes
+======================================
``amd_pstate`` CPPC has 3 operation modes: autonomous (active) mode,
non-autonomous (passive) mode and guided autonomous (guided) mode.
@@ -353,6 +353,48 @@ is activated. In this mode, driver requests minimum and maximum performance
level and the platform autonomously selects a performance level in this range
and appropriate to the current workload.
+``amd-pstate`` Preferred Core
+=================================
+
+The core frequency is subjected to the process variation in semiconductors.
+Not all cores are able to reach the maximum frequency respecting the
+infrastructure limits. Consequently, AMD has redefined the concept of
+maximum frequency of a part. This means that a fraction of cores can reach
+maximum frequency. To find the best process scheduling policy for a given
+scenario, OS needs to know the core ordering informed by the platform through
+highest performance capability register of the CPPC interface.
+
+``amd-pstate`` preferred core enables the scheduler to prefer scheduling on
+cores that can achieve a higher frequency with lower voltage. The preferred
+core rankings can dynamically change based on the workload, platform conditions,
+thermals and ageing.
+
+The priority metric will be initialized by the ``amd-pstate`` driver. The ``amd-pstate``
+driver will also determine whether or not ``amd-pstate`` preferred core is
+supported by the platform.
+
+``amd-pstate`` driver will provide an initial core ordering when the system boots.
+The platform uses the CPPC interfaces to communicate the core ranking to the
+operating system and scheduler to make sure that OS is choosing the cores
+with highest performance firstly for scheduling the process. When ``amd-pstate``
+driver receives a message with the highest performance change, it will
+update the core ranking and set the cpu's priority.
+
+``amd-pstate`` Preferred Core Switch
+=================================
+Kernel Parameters
+-----------------
+
+``amd-pstate`` peferred core`` has two states: enable and disable.
+Enable/disable states can be chosen by different kernel parameters.
+Default enable ``amd-pstate`` preferred core.
+
+``amd_prefcore=disable``
+
+For systems that support ``amd-pstate`` preferred core, the core rankings will
+always be advertised by the platform. But OS can choose to ignore that via the
+kernel parameter ``amd_prefcore=disable``.
+
User Space Interface in ``sysfs`` - General
===========================================
@@ -385,6 +427,19 @@ control its functionality at the system level. They are located in the
to the operation mode represented by that string - or to be
unregistered in the "disable" case.
+``prefcore``
+ Preferred core state of the driver: "enabled" or "disabled".
+
+ "enabled"
+ Enable the ``amd-pstate`` preferred core.
+
+ "disabled"
+ Disable the ``amd-pstate`` preferred core
+
+
+ This attribute is read-only to check the state of preferred core set
+ by the kernel parameter.
+
``cpupower`` tool support for ``amd-pstate``
===============================================