> I think that looking at it from a MHz standpoint is a red herring. How many things can you do per watt now, than you could per watt then?
Obviously a lot more. The OP said the thing could run in two AAs for a month.
Nowadays, almost nothing can last a month on one charge/set of batteries. The only thing I can think of that might pass is a Kindle, due to the trick where it's literally shut down almost all the time.
"GreenArrays is shipping its 144-core asynchronous chip that needs little energy (7 pJ/inst). Idle cores use no power (100 nW). Active ones (4 mW) run fast (666 Mips), then wait for communication (idle).
Tight coding to minimize instructions executed will minimize power. The programmer can also reduce instruction fetches, transistor switching and duty cycle.
They just are not widely used because ARM and similar processors offer much more computational power and people are happy charging their devices every day or so.
> They just are not widely used because ARM and similar processors offer much more computational power and people are happy charging their devices every day or so.
This is exactly my point. Ultra low power processors exist, but they're not used for consumer electronics. Developers would rather build something bloated, quickly, than take the time to optimize. And technological advancements has taken away a lot of the pressure for optimization (e.g. I'm sure it was a super high priority to get a Psion to sip power, because a recharge was going to the store and paying $4 for a set of new batteries).
If I were a dictator that ruled with an iron fist, I'd mandate that all software be developed on underpowered devices, then released on fast ones.
> If I were a dictator that ruled with an iron fist, I'd mandate that all software be developed on underpowered devices, then released on fast ones.
Agreed! I wish there were widespread ways of throttling CPU and memory given to desktop applications today. If I'm testing a web application, I tell Firefox to throttle my network down to GPRS and see the responsiveness (or lack thereof) and once my work is done and GPRS is reasonably fast (or whatever) I can give a quick glance at normal 4G speeds and see my web app screams now.
So why can't I lock a desktop application to settings like "an unused 386 PC with 24MB of RAM"?
> If I were a dictator that ruled with an iron fist, I'd mandate that all software be developed[^W*] on underpowered devices, then released on fast ones.
*"tested"/"run during development exclusively"
You still want the text editor and more importantly compiler to run on beefy workstation hardware, in order to avoid programmer productivity problems like long compilation times[0] and to take advantage of CPU-intensive optimization techniques.
The Psion 3, 3A, 3C and 3MX ran EPOC, a proprietary 8086 OS with preemptive multitasking and a full keyboard-only GUI.
But their successors, the Psion 5, 5MX and netBook, ran a rewrite called EPOC32. That was written in C++, is native to ARM, and ran well in 4MB and very well in 8MB. Full preemptive multitasking, touchscreen GUI, networking, IPv4 and more, FAT32 and networking support.
That later was rebranded as Symbian and was the first mass-market smartphone OS. It was the only smartphone OS that could run the GSM comms stack on the same CPU as the user facing GUI OS -- its realtime support was that good. iOS, Android, WinCE, all need a separate CPU with its own RTOS for that.
It's a crime and a tragedy that nobody's picked it up and ported it to any modern SOC. It is much richer and more complete than any other modern C++ OS such as Genode or Serenity OS.
Obviously a lot more. The OP said the thing could run in two AAs for a month.
Nowadays, almost nothing can last a month on one charge/set of batteries. The only thing I can think of that might pass is a Kindle, due to the trick where it's literally shut down almost all the time.