[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140120181208.GC25439@amd.pavel.ucw.cz>
Date: Mon, 20 Jan 2014 19:12:08 +0100
From: Pavel Machek <pavel@....cz>
To: Catalin Marinas <catalin.marinas@....com>
Cc: Morten Rasmussen <Morten.Rasmussen@....com>,
"peterz@...radead.org" <peterz@...radead.org>,
"mingo@...nel.org" <mingo@...nel.org>,
"rjw@...ysocki.net" <rjw@...ysocki.net>,
"markgross@...gnar.org" <markgross@...gnar.org>,
"vincent.guittot@...aro.org" <vincent.guittot@...aro.org>,
"linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [11/11] system 1: Saving energy using DVFS
> > Sleeping CPU: 2mA
> > Screen on: 230mA
> > CPU loaded: 250mA
> >
> > Now, lets believe your numbers and pretend system can operate at 33%
> > of speed with 11% power consumption.
> >
> > Lets take task that takes 10 seconds on max frequency:
> >
> > ~ 10s * 470mA = 4700mAs
> >
> > You suggest running at 33% speed, instead; that means 30 seconds on
> > low requency.
> >
> > CPU on low: 25mA (assumed).
> >
> > ~ 30s * 255mA = 7650mAs
> >
> > Hmm. So race to idle is good thing on Intel machines, and it is good
> > thing on ARM design I have access to.
>
> Race to idle doesn't mean that the screen goes off as well. Let's say
> the screen stays on for 1 min and the CPU needs to be running for 10s
> over this minute, in the first case you have:
>
> 10s & 250mA + 60s * 230mA = 16300mAs
>
> in the second case you have:
>
> 30s * 25mA + 60s * 230mA = 14550mAs
>
> That's a 1750mAs difference. There are of course other parts drawing
> current but simple things like the above really make a difference in the
> mobile space, both in terms of battery and thermal budget.
Aha, I noticed the values are now the other way around. [And notice
that if user _does_ lock/turn off the screen after the operation,
difference between power consumptions is factor of two. People do turn
off screens before putting phone back in pocket.]
You are right that as long as user does _not_ wait for the computation
result, running at low frequency might make sense. That may be true on
cellphone so fast that all the actions are "instant". I have yet to
see such cellphone. That probably means that staying on low frequency
normally and going to high after cpu is busy for 100msec or so is
right thing: if cpu is busy for 100msec, it probably means user is
waiting for the result.
But it depends on the numbers you did not tell us. I'm pretty sure
N900 does _not_ have 11% power consuption at 33% performance; I just
assumed so for sake of argument.
So, really, details are needed.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists