Nicholas Piggin
f2ac428e0e
powerpc/pseries/cpuidle: add polling idle for shared processor guests
...
For shared processor guests (e.g., KVM), add an idle polling mode rather
than immediately returning to the hypervisor when the guest CPU goes
idle.
Test setup is a 2 socket POWER9 with 4 guests running, each with vCPUs
equal to 1/2 of real of CPUs. Saturated each guest with tbench. Using
polling idle gives about 1.4x throughput.
Kernel compile speed was not changed significantly.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2018-01-18 15:43:44 +11:00
..
governors
cpuidle: ladder: Add per CPU PM QoS resume latency support
2017-11-08 12:16:01 +01:00
coupled.c
smp: Avoid using two cache lines for struct call_single_data
2017-08-29 15:14:38 +02:00
cpuidle-arm.c
ARM: cpuidle: Refactor rollback operations if init fails
2017-10-14 01:01:11 +02:00
cpuidle-at91.c
cpuidle-big_little.c
cpuidle-calxeda.c
cpuidle-clps711x.c
drivers/cpuidle: make cpuidle-clps711x.c explicitly non-modular
2015-12-15 00:22:21 +01:00
cpuidle-cps.c
Update MIPS email addresses
2017-11-03 09:02:30 -07:00
cpuidle-exynos.c
drivers/cpuidle: make cpuidle-exynos.c explicitly non-modular
2015-12-15 00:22:22 +01:00
cpuidle-kirkwood.c
cpuidle-mvebu-v7.c
cpuidle: mvebu: disable the bind/unbind attributes and use builtin_platform_driver
2015-10-23 12:40:48 +02:00
cpuidle-powernv.c
cpuidle/powernv: avoid double irq enable coming out of idle
2018-01-18 15:43:43 +11:00
cpuidle-pseries.c
powerpc/pseries/cpuidle: add polling idle for shared processor guests
2018-01-18 15:43:44 +11:00
cpuidle-ux500.c
drivers/cpuidle: make cpuidle-ux500.c explicitly non-modular
2015-12-15 00:22:22 +01:00
cpuidle-zynq.c
cpuidle.c
cpuidle: Avoid assignment in if () argument
2017-11-08 23:15:30 +01:00
cpuidle.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
driver.c
cpuidle: Make drivers initialize polling state
2017-08-30 03:06:33 +02:00
dt_idle_states.c
Merge branch 'pm-sleep'
2017-09-04 00:06:02 +02:00
dt_idle_states.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
governor.c
cpuidle: governors: Remove remaining old module code
2016-10-21 14:49:51 +02:00
Kconfig
cpuidle: Don't enable all governors by default
2016-01-15 22:39:58 +01:00
Kconfig.arm
ARM: cpuidle: Support asymmetric idle definition
2017-06-24 01:51:00 +02:00
Kconfig.mips
cpuidle: cpuidle-cps: Enable use with MIPSr6 CPUs.
2016-10-04 16:13:57 +02:00
Kconfig.powerpc
Makefile
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
poll_state.c
cpuidle: Make drivers initialize polling state
2017-08-30 03:06:33 +02:00
sysfs.c
cpuidle: Validate cpu_dev in cpuidle_add_sysfs()
2017-03-21 22:26:37 +01:00