[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0gKeHsvB_Jfja=yYLijhe9_dWSjCaMDtE2isOuJa6dy8w@mail.gmail.com>
Date: Mon, 30 Sep 2024 17:06:03 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Christian Loehle <christian.loehle@....com>
Cc: linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org, rafael@...nel.org,
peterz@...radead.org, juri.lelli@...hat.com, mingo@...hat.com,
dietmar.eggemann@....com, vschneid@...hat.com, vincent.guittot@...aro.org,
Johannes.Thumshirn@....com, adrian.hunter@...el.com, ulf.hansson@...aro.org,
bvanassche@....org, andres@...razel.de, asml.silence@...il.com,
linux-block@...r.kernel.org, io-uring@...r.kernel.org, qyousef@...alina.io,
dsmythies@...us.net, axboe@...nel.dk
Subject: Re: [RFC PATCH 2/8] cpuidle: Prefer teo over menu governor
On Thu, Sep 5, 2024 at 11:27 AM Christian Loehle
<christian.loehle@....com> wrote:
>
> Since menu no longer has the interactivity boost teo works better
> overall, so make it the default.
>
> Signed-off-by: Christian Loehle <christian.loehle@....com>
I know that this isn't strictly related to the use of iowait in menu,
but I'd rather wait with this one until the previous change in menu
settles down.
Also it would be good to provide some numbers to support the "teo
works better overall" claim above.
> ---
> drivers/cpuidle/Kconfig | 5 +----
> drivers/cpuidle/governors/menu.c | 2 +-
> drivers/cpuidle/governors/teo.c | 2 +-
> 3 files changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/cpuidle/Kconfig b/drivers/cpuidle/Kconfig
> index cac5997dca50..ae67a464025a 100644
> --- a/drivers/cpuidle/Kconfig
> +++ b/drivers/cpuidle/Kconfig
> @@ -5,7 +5,7 @@ config CPU_IDLE
> bool "CPU idle PM support"
> default y if ACPI || PPC_PSERIES
> select CPU_IDLE_GOV_LADDER if (!NO_HZ && !NO_HZ_IDLE)
> - select CPU_IDLE_GOV_MENU if (NO_HZ || NO_HZ_IDLE) && !CPU_IDLE_GOV_TEO
> + select CPU_IDLE_GOV_TEO if (NO_HZ || NO_HZ_IDLE) && !CPU_IDLE_GOV_MENU
> help
> CPU idle is a generic framework for supporting software-controlled
> idle processor power management. It includes modular cross-platform
> @@ -30,9 +30,6 @@ config CPU_IDLE_GOV_TEO
> This governor implements a simplified idle state selection method
> focused on timer events and does not do any interactivity boosting.
>
> - Some workloads benefit from using it and it generally should be safe
> - to use. Say Y here if you are not happy with the alternatives.
> -
> config CPU_IDLE_GOV_HALTPOLL
> bool "Haltpoll governor (for virtualized systems)"
> depends on KVM_GUEST
> diff --git a/drivers/cpuidle/governors/menu.c b/drivers/cpuidle/governors/menu.c
> index 28363bfa3e4c..c0ae5e98d6f1 100644
> --- a/drivers/cpuidle/governors/menu.c
> +++ b/drivers/cpuidle/governors/menu.c
> @@ -508,7 +508,7 @@ static int menu_enable_device(struct cpuidle_driver *drv,
>
> static struct cpuidle_governor menu_governor = {
> .name = "menu",
> - .rating = 20,
> + .rating = 19,
> .enable = menu_enable_device,
> .select = menu_select,
> .reflect = menu_reflect,
> diff --git a/drivers/cpuidle/governors/teo.c b/drivers/cpuidle/governors/teo.c
> index f2992f92d8db..6c3cc39f285d 100644
> --- a/drivers/cpuidle/governors/teo.c
> +++ b/drivers/cpuidle/governors/teo.c
> @@ -537,7 +537,7 @@ static int teo_enable_device(struct cpuidle_driver *drv,
>
> static struct cpuidle_governor teo_governor = {
> .name = "teo",
> - .rating = 19,
> + .rating = 20,
> .enable = teo_enable_device,
> .select = teo_select,
> .reflect = teo_reflect,
> --
> 2.34.1
>
Powered by blists - more mailing lists