Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933849Ab0FEXqe (ORCPT ); Sat, 5 Jun 2010 19:46:34 -0400 Received: from www.tglx.de ([62.245.132.106]:36872 "EHLO www.tglx.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933775Ab0FEXqc (ORCPT ); Sat, 5 Jun 2010 19:46:32 -0400 Date: Sun, 6 Jun 2010 01:45:52 +0200 (CEST) From: Thomas Gleixner To: Arjan van de Ven cc: Brian Swetland , =?ISO-8859-15?Q?Arve_Hj=F8nnev=E5g?= , Peter Zijlstra , Ingo Molnar , tytso@mit.edu, Neil Brown , "Rafael J. Wysocki" , Alan Stern , Felipe Balbi , LKML , Florian Mickler , Linux OMAP Mailing List , Linux PM , Alan Cox , James Bottomley , Linus Torvalds , Kevin Hilman , "H. Peter Anvin" Subject: Re: suspend blockers & Android integration In-Reply-To: <20100605154833.7d05e404@infradead.org> Message-ID: References: <20100603193045.GA7188@elte.hu> <20100603231153.GA11302@elte.hu> <20100603232302.GA16184@elte.hu> <20100604071354.GA14451@elte.hu> <20100604083423.GD15181@elte.hu> <1275653210.27810.39762.camel@twins> <1275731653.27810.41078.camel@twins> <20100605092851.6ee15f13@infradead.org> <20100605152326.7ccd5160@infradead.org> <20100605154833.7d05e404@infradead.org> User-Agent: Alpine 2.00 (LFD 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2474 Lines: 58 On Sat, 5 Jun 2010, Arjan van de Ven wrote: > On Sat, 5 Jun 2010 15:26:36 -0700 > Brian Swetland wrote: > > > > > I'm continually surprised by answers like this. We run on hardware > > that power gates very aggressively and draws in the neighborhood of > > 1-2mA at the battery when in the lowest state (3-5mA while the radio > > is connected to the network and paging). Waking up out of that lowest > > state and executing code every few seconds or (worse) several times a > > second) will raise your average power consumption. Being able to stay > > parked at the very bottom for minutes or hours at a time when nothing > > "interesting" is happening is very useful and can have a significant > > impact on overall battery life. > > It's relatively simple math. > > If you wake up for a burst of work, you burn power at the higher level > P1 (versus the lower power level P2), for, lets say an average time T, > with a relatively small T (few milliseconds at most). > > If you wake up X times per second (with X being a fractional number, so > can be smaller than 1) the extra power consumption factor is > > X * T * P1 > ------------------------------- > X * T * P1 + (1.0 - X * T) * P2 > > if you draw a graph of this, for real values of P and T, there's a real > point where you hit diminishing returns. > > if say T is 5 milliseconds (that's a high amount), and X is 1 > wakeup/second, then there's already a 200:1 ratio in time an power. > > If X goes to once every 10 seconds (not unreasonable, especially since > any real device will pull email and stuff in the backgroudn), you have > 2000:1 time and power ratios... > > Unless your "on" power is insane high (and hopefully it's not, since > you're not turning on the whole device obviously, you do selective > power and clock gating)... that "divide by 200 or 2000" makes the whole > problem go away.. in the "seconds" range for really low power devices. > Not in "hours" range. That's the whole problem. Suspend blockers are a binary all on/off approach so you waste power just to get the thing back to "suspend". They unleash the world and some more just to put it back into oblivion with brute force. Thanks, tglx -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/