archive mirror
 help / color / mirror / Atom feed
From: Meng Li <>
To: "Rafael J . Wysocki" <>,
	Borislav Petkov <>, 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 <>,
	Perry Yuan <>
Subject: [PATCH V14 6/7] Documentation: amd-pstate: introduce amd-pstate preferred core
Date: Fri, 19 Jan 2024 17:05:01 +0800	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <>

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 <>
Reviewed-by: Perry Yuan <>
Signed-off-by: Meng Li <>
 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 9eb26014d34b..0a3aa6b8ffd5 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.
+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.
+	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``

  parent reply	other threads:[~2024-01-19  9:06 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-19  9:04 [PATCH V14 0/7] amd-pstate preferred core Meng Li
2024-01-19  9:04 ` [PATCH V14 1/7] x86: Drop CPU_SUP_INTEL from SCHED_MC_PRIO for the expansion Meng Li
2024-01-19  9:04 ` [PATCH V14 2/7] ACPI: CPPC: Add get the highest performance cppc control Meng Li
2024-01-19  9:04 ` [PATCH V14 3/7] cpufreq: amd-pstate: Enable amd-pstate preferred core supporting Meng Li
2024-01-19  9:04 ` [PATCH V14 4/7] cpufreq: Add a notification message that the highest perf has changed Meng Li
2024-01-19  9:05 ` [PATCH V14 5/7] cpufreq: amd-pstate: Update amd-pstate preferred core ranking dynamically Meng Li
2024-01-19  9:05 ` Meng Li [this message]
2024-01-19  9:05 ` [PATCH V14 7/7] Documentation: introduce amd-pstate preferrd core mode kernel command line options Meng Li
2024-01-29 15:18 ` [PATCH V14 0/7] amd-pstate preferred core Rafael J. Wysocki
2024-01-29 15:33   ` Borislav Petkov
2024-01-31 13:58     ` Rafael J. Wysocki
2024-02-18 16:10       ` Lucas Lee Jing Yi
2024-02-18 16:10         ` [PATCH] [PATCH] amd_pstate: fix erroneous highest_perf value on some CPUs Lucas Lee Jing Yi
2024-02-20  7:23           ` Meng, Li (Jassmine)
2024-02-20  9:02           ` Oleksandr Natalenko
2024-02-21 17:19             ` Lucas Lee Jing Yi
2024-02-21 17:19               ` Lucas Lee Jing Yi
2024-02-21 18:47                 ` Mario Limonciello
2024-02-19  1:02         ` [PATCH V14 0/7] amd-pstate preferred core Meng, Li (Jassmine)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).