[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <66ba8291b33e440280ead8418b8b21ee@AcuMS.aculab.com>
Date: Wed, 24 Aug 2022 14:08:16 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Dapeng Mi' <dapeng1.mi@...el.com>,
"rafael@...nel.org" <rafael@...nel.org>,
"daniel.lezcano@...aro.org" <daniel.lezcano@...aro.org>,
"pbonzini@...hat.com" <pbonzini@...hat.com>
CC: "linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"zhenyuw@...ux.intel.com" <zhenyuw@...ux.intel.com>
Subject: RE: [PATCH] KVM: x86: use TPAUSE to replace PAUSE in halt polling
From: Dapeng Mi
> Sent: 24 August 2022 10:11
>
> TPAUSE is a new instruction on Intel processors which can instruct
> processor enters a power/performance optimized state. Halt polling
> uses PAUSE instruction to wait vCPU is waked up. The polling time
> could be long and cause extra power consumption in some cases.
>
> Use TPAUSE to replace the PAUSE instruction in halt polling to get
> a better power saving and performance.
What is the effect on wakeup latency?
Quite often that is far more important than a bit of power saving.
The automatic entry of sleep states is a PITA already.
Block 30 RT threads in cv_wait() and then do cv_broadcast().
Use ftrace to see just how long it takes the last thread
to wake up.
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Powered by blists - more mailing lists