There's something satisfying about fiddling around with your smartphone, doing your best to optimise its battery life. You might even have ramped down the frame rate and resolution on your camera to try and scrape back a few extra minutes. Turns out that particular optimisation probably increased power consumption. Who'd have thought?
A new paper crafted by Houston's Rice University and Microsoft Research concludes that current CMOS image sensors and the software that drives them is extremely wasteful -- not only when they're not being used, but when frame rate and resolution are reduced.
Naturally, you'd expect sacrificing quality would result in power savings, but tests conducted by the two found the opposite to be true:
We ﬁnd that modern image sensors are not energy-proportional: energy per pixel is in fact inversely proportional to frame rate and resolution of image capture, and thus image sensor systems fail to provide an important principle of energy-aware system design: trading quality for energy efficiency.
So, Rice and Microsoft took it upon themselves to figure out where all the power was being used and if possible, reduce or optimise the consumption. Five sensors from "two major vendors in the mobile market" were put through their paces and it was discovered that two software-based techniques provided exceptional savings -- "optimal clock scaling", which cut usage by 30-50 per cent and an "aggressive standby mode", which achieved up to 95 per cent savings.
On top of this, it suggests "architectural modiﬁcations" to the sensors themselves that could net a further 30 per cent reduction.
The paper mentions the first set of changes, which only require software support, could be implemented sooner rather than later, if the likes of Apple, Google and Microsoft itself are willing to play along:
As we have demonstrated, clock scaling and aggressive standby power models described in Section 4 provide an opportunity to reduce the power consumption of the camera for tasks that do not require high frame rates and/or high resolutions. However, current mobile systems do not provide any system or API support for applications to adjust the clock frequency or apply standby mode. We hope our work will motivate platform and system vendors to consider such support.
What isn't mentioned is the power savings in relation to the entire device's consumption, so it's hard to know how these tweaks will affect battery life generally. But you'd have to assume they'd be noticeable enough for the paper to give the nod to their implementation.