Re: Mwait usage on AMD processors

From: Huang Rui
Date: Thu May 14 2015 - 06:17:51 EST


On Thu, May 14, 2015 at 11:21:37AM +0200, Borislav Petkov wrote:
> On Thu, May 14, 2015 at 02:54:52PM +0800, Huang Rui wrote:
> > Hi Len, Rafael, and all,
> >
> > AMD proposed a new instruction named mwaitx. This is an extension of
> > mwait with a configurable timer (mwaitx = mwait + timer). And mwaitx
> > will act as mwait if timer is disabled. However, mwait/mwaitx cannot
> > let cpu core go to C1 state at current AMD processors, but has less
> > power consumption even at C0 while core is waiting.
> > As you know, mwait/mwaitx would have better performance than halt. So
> > could we propose an implementation to use mwaitx at idle call in boot
> > phase and cpuidle driver after boot phase.
>
> I'd select it in select_idle_routine()...
>

I know, actually, I already completed it in my local side, and
mwaitx_idle will be called with x86_idle at boot phase. :)

I plan to continue to implement it with cpuidle driver if mwaitx_idle
can be accepted.

> > And the mwaitx idle is exposed to user as an optional kernel
> > parameter(idle=...), and decided by user.
>
> If MWAITX is better than C1 (and C1E, which we're doing now AFAIR)
> then I'd enable it by default on those machines so that it is used
> automatically.
>

At current processors, MWAITX cannot go to C1 state, but has faster
waiting exit speed. MWAITX is still at C0 but less power consumption.
So for now, I just want to set it optionally.
HW designer will do deeper low power state (C1, and more) in future
processors. At that time, we can enable it by default.

Thanks,
Rui
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/