From: Huang Rui <ray.huang@amd.com>
To: "Meng, Li (Jassmine)" <Li.Meng@amd.com>
Cc: "Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"x86@kernel.org" <x86@kernel.org>,
"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
Shuah Khan <skhan@linuxfoundation.org>,
"linux-kselftest@vger.kernel.org"
<linux-kselftest@vger.kernel.org>,
"Fontenot, Nathan" <Nathan.Fontenot@amd.com>,
"Sharma, Deepak" <Deepak.Sharma@amd.com>,
"Deucher, Alexander" <Alexander.Deucher@amd.com>,
"Limonciello, Mario" <Mario.Limonciello@amd.com>,
"Huang, Shimmer" <Shimmer.Huang@amd.com>,
"Yuan, Perry" <Perry.Yuan@amd.com>,
"Du, Xiaojian" <Xiaojian.Du@amd.com>,
Viresh Kumar <viresh.kumar@linaro.org>,
Borislav Petkov <bp@alien8.de>
Subject: Re: [PATCH V4 6/7] Documentation: amd-pstate: introduce AMD Pstate Preferred Core
Date: Tue, 29 Aug 2023 16:07:52 +0800 [thread overview]
Message-ID: <ZO2nWDqXZR/qGBO1@amd.com> (raw)
In-Reply-To: <20230829064340.1136448-7-li.meng@amd.com>
On Tue, Aug 29, 2023 at 02:43:39PM +0800, Meng, Li (Jassmine) wrote:
> Introduce AMD Pstate Preferred Core.
>
> check preferred core state:
> $ cat /sys/devices/system/cpu/amd-pstate/prefcore
>
> Signed-off-by: Meng Li <li.meng@amd.com>
> ---
> Documentation/admin-guide/pm/amd-pstate.rst | 54 +++++++++++++++++++++
> 1 file changed, 54 insertions(+)
>
> diff --git a/Documentation/admin-guide/pm/amd-pstate.rst b/Documentation/admin-guide/pm/amd-pstate.rst
> index 1cf40f69278c..400264d52007 100644
> --- a/Documentation/admin-guide/pm/amd-pstate.rst
> +++ b/Documentation/admin-guide/pm/amd-pstate.rst
> @@ -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
Please align with ``amd-pstate`` in the whole documentation.
> +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 same here.
> +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 Preferred Core Switch
> +=================================
> +Kernel Parameters
> +-----------------
> +
> +``AMD Pstate Preferred 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``.
As the comment in previos patch, we would better to let developers know how
to detect this function in the hardware.
Thanks,
Ray
> +
> User Space Interface in ``sysfs`` - General
> ===========================================
>
> @@ -385,6 +427,18 @@ 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 Preferred Core.
> +
> + "disabled"
> + Disable the AMD Preferred Core
> +
> +
> + This attribute is read-only to check the state of Preferred Core.
> +
> ``cpupower`` tool support for ``amd-pstate``
> ===============================================
>
> --
> 2.34.1
>
next prev parent reply other threads:[~2023-08-29 8:09 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-29 6:43 [PATCH V4 0/7] AMD Pstate Preferred Core Meng Li
2023-08-29 6:43 ` [PATCH V4 1/7] x86: Drop CPU_SUP_INTEL from SCHED_MC_PRIO for the expansion Meng Li
2023-08-29 6:43 ` [PATCH V4 2/7] acpi: cppc: Add get the highest performance cppc control Meng Li
2023-08-29 6:43 ` [PATCH V4 3/7] cpufreq: amd-pstate: Enable AMD Pstate Preferred Core Supporting Meng Li
2023-08-29 8:01 ` Huang Rui
2023-08-31 1:42 ` Meng, Li (Jassmine)
2023-08-29 14:52 ` kernel test robot
2023-08-29 6:43 ` [PATCH V4 4/7] cpufreq: Add a notification message that the highest perf has changed Meng Li
2023-08-29 16:27 ` kernel test robot
2023-08-29 6:43 ` [PATCH V4 5/7] cpufreq: amd-pstate: Update AMD Pstate Preferred Core ranking dynamically Meng Li
2023-08-29 6:43 ` [PATCH V4 6/7] Documentation: amd-pstate: introduce AMD Pstate Preferred Core Meng Li
2023-08-29 8:07 ` Huang Rui [this message]
2023-08-29 6:43 ` [PATCH V4 7/7] Documentation: introduce AMD Pstate Preferrd Core mode kernel command line options Meng Li
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:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZO2nWDqXZR/qGBO1@amd.com \
--to=ray.huang@amd.com \
--cc=Alexander.Deucher@amd.com \
--cc=Deepak.Sharma@amd.com \
--cc=Li.Meng@amd.com \
--cc=Mario.Limonciello@amd.com \
--cc=Nathan.Fontenot@amd.com \
--cc=Perry.Yuan@amd.com \
--cc=Shimmer.Huang@amd.com \
--cc=Xiaojian.Du@amd.com \
--cc=bp@alien8.de \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rafael.j.wysocki@intel.com \
--cc=skhan@linuxfoundation.org \
--cc=viresh.kumar@linaro.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* 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).