Messages in this thread | | | From | Thomas Gleixner <> | Subject | RE: [PATCH] cpuidle-haltpoll: Disable kvm guest polling when mwait_idle is used | Date | Wed, 07 Dec 2022 12:41:16 +0100 |
| |
On Wed, Dec 07 2022 at 10:49, Rongqing Li wrote: >> Before change, "sockperf ping-pong -i 127.0.0.1 -p 20001 --tcp " latency is: >> sockperf: Summary: Latency is 6.245 usec >> >> this patch, disable cpuidle-haltpoll >> sockperf: Summary: Latency is 4.671 usec >> >> >> using arch_cpu_idle() in default_enter_idle() >> sockperf: Summary: Latency is 4.285 usec >> > > When I did upper tests, I taskset sockperf server and client to > different cpus, so using arch_cpu_idle() in default_enter_idle() gets > better result. > > I test unixbench also, find that Don't loading cpuidle-haltholl can > get more performance on 8 cores (2 threads per core) intel cpu which > cstate is disabled in host > > Don't load cpuidle-haltpoll: > System Benchmarks Index Score 1995.8 > System Benchmarks Index Score 8482.8 > > Replace default_idle with arch_cpu_idle, and load cpuidle-haltpoll, code like below: > System Benchmarks Index Score 1971.4 > System Benchmarks Index Score 8467.7 > > So I think we should not load cpuidle-haltpoll driver when guest has mwait
So in the above you got:
Driver loaded not modified: 6.245 Driver not loaded: 4.671 ~25% Driver loaded modified: 4.285 ~30%
Now with unixbench:
Driver not loaded: 8482.8 Driver loaded modified: 8467.7 ~0.2%
So because of 0.2% delta you justify to throw away a 5% win?
If you really care about the 0.2%, then blacklist the module for your use case.
Thanks,
tglx
| |