Hacker News new | ask | show | jobs
by swetland 3917 days ago
CPUs enter and exit sleep on Android devices constantly. Back in 2007 on the MSM7201A we'd go to power-down sleep for any idle times of >50mS (nothing to schedule for the next 50mS). Run fast and go to sleep has always been the primary power policy.

That said there's plenty of lightweight threads and processes that are mostly IO or event bound, do very little compute, and will run in roughly the same time on a small core as a large core, but the small cores have a lower static power footprint (base cost to have them powered up at all), so big.little works out well there.

1 comments

Run fast and go to sleep has always been the primary power policy.

A sleeping core is obviously the most efficient core, however you have said nothing to discount what I said. Putting a core to sleep is a very costly activity, which is exactly why it happens at the millisecond scale.

Before that happens, the core will likely have been frequency scaled to more appropriately fit the window's loading. I mean, we know this is the case right now, and that "run fast and go to sleep" is not the primary policy. It's "run as fast as appropriate for the workload to fill a quantum, and sleep when there is no workload". There are many if not most workloads that are externally bound, or event triggered enough that sleep is completely out of the question and running faster does nothing.

Your words have been used (out of context and inappropriately) to bolster DannyBee when they represent, literally, all that is wrong with Hacker News.