Friday, December 31, 2010

Frequency scaling on embedded systems (e.g. Android phones)

Many modern embedded systems, such as Android - running on your phone or tablet - use frequency scaling as a method of reducing power consumption. Similar to PC frequency scaling, they scale up the frequency as demand on the CPU(s) increases. Unfortunately, there is inherent and inevitable penalty for this scaling change. You can't predict a heavy load *before* a heavy load, so there is a microsecond delay. Keeping the device in a High Performance Mode or limiting its minimum scaling value will allow improvement in performance, at the cost of battery life (a small cost -- I *think*).

Sadly, you have to 'root' your device to accomplish that. To may void certain warranties, so I can not recommend it. A freeware application, SetCPU, was written to allow adjustment of these 'power profiles' and let you even overclock some models should you decide.

It turns out, as I learn more about Android, my knowledge of both embedded linux and web programming will come in handy. It is a funny clash of the two that should make development a breeze. I hope to develop several freeware utilities soon, just to get the ball rolling. Maybe I'll come up with something profitable at some point, but for now I just want to have some fun with Android.

I do believe it will win the embedded platform war. Why? It is the most open. History and theory shows that the most open platform will win. While that hasn't proven true for linux maybe, Android is a different beast because it is backed by such a wealthy corporation. It is more like Microsoft releasing an open source Windows than some linux distribution. I believe adoption of this new platform will be rapid.

Now, I've not evaluated Windows 7 Mobile yet, and I expect they've made some great strides forward as well. However, no matter their innovations (even if better), I don't see them winning this platform war.

So, Android it is. Good thing about Android store too is that you can get a 'refund' within 24 hours (iirc), at least I did. So, you can try an app for a bit before absolutely committing to buying it. Also good is most apps are free. All the good ones seem to be free. If you need to do something a bit more advanced, you pay a little -- as it should be. Still, the apps are likely cheaper than on iPhone, and I guarantee you the available apps is the same no matter the actual count. I mean, think of 100 applications and I bet both have them.

Well, ok, there is ONE thing --- PayPal application check cashing. Why iPhone only?!?! ARGH!??! Do you know how much gas that would save me?

No comments:

Post a Comment