[dpdk-dev] [PATCH v2 2/3] examples/vm_power_manager: Allowing power managing of idle cores
Hunt, David
david.hunt at intel.com
Thu Jun 25 12:17:56 CEST 2020
Hi Rory,
On 18/5/2020 11:39 AM, Sexton, Rory wrote:
> This change is required to allow the branch ratio algorithm to
> power manage cores with no workload running on them. This is
> useful both when idle cores don't use C-states and for a number of
> hyperthreading scenarios.
>
> Signed-off-by: Rory Sexton <rory.sexton at intel.com>
> ---
> examples/vm_power_manager/oob_monitor_x86.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/examples/vm_power_manager/oob_monitor_x86.c b/examples/vm_power_manager/oob_monitor_x86.c
> index 3c514475f..a5b1c168c 100644
> --- a/examples/vm_power_manager/oob_monitor_x86.c
> +++ b/examples/vm_power_manager/oob_monitor_x86.c
> @@ -96,12 +96,12 @@ apply_policy(int core)
> g_branch_misses = miss_diff;
>
> if (hits_diff < (INTERVAL*100)) {
> - /* Likely no workload running on this core. Skip. */
> - return -1.0;
> + /* Likely no workload running on this core. */
> + ratio = 0.0;
> + } else {
> + ratio = (float)miss_diff * (float)100 / (float)hits_diff;
> }
>
> - ratio = (float)miss_diff * (float)100 / (float)hits_diff;
> -
> /*
> * Store the last few directions that the ratio indicates
> * we should take. If there's on 'up', then we scale up
Good enhancement. It hadn't occurred to me to manage non-PMD workloads,
but I agree that when
C-States are disabled on a system, there may be cases where this
algorithm is useful to save power.
Reviewed-by: David Hunt <david.hunt at intel.com>
More information about the dev
mailing list