Messages in this thread | | | From | "Gautham R. Shenoy" <> | Subject | [RFC/PATCH 0/2] powernv:cpuidle: Enable winkle idle state | Date | Fri, 19 Aug 2016 03:56:53 +0530 |
| |
From: "Gautham R. Shenoy" <ego@linux.vnet.ibm.com>
Hi,
The patches in these series enable support for Winkle idle state in CPU-Idle.
The first patch is a platform-independent CPU-Idle patch that allows CPU-Idle states to be disabled at start (Currently they are all enabled by default).
The second patch adds the winkle enablement for powernv-cpuidle. By default, the winkle idle-state is disabled. It can be enabled by writing zero to the per-cpu cpuidle sysfs control file named "disable".
This series has been lightly tested on a 2-socket POWER8 system and the machine was pretty stable while running kernbench and ebizzy. I didn't see any regressions with those.
I haven't yet evaluated the impact that these patches might have on latency sensitive workloads. I hope to do that in a day or two.
On the power-savings front, I could observe 6-8% additional power-savings when winkle state was enabled on an idle system with SMT=on. With SMT=off, additional idle power-savings observed with winkle enabled were greater than 15%. The numbers indicate that it might be worth the while to pursue this!
Gautham R. Shenoy (2): cpuidle: Allow idle-states to be disabled at start powernv:cpuidle: Enable winkle idle state in CPU-Idle.
drivers/cpuidle/cpuidle-powernv.c | 44 ++++++++++++++++++++++++++++++++------- drivers/cpuidle/cpuidle.c | 7 +++++++ include/linux/cpuidle.h | 7 ++++++- 3 files changed, 49 insertions(+), 9 deletions(-)
-- 1.9.4
| |