MIT's Chisel system saves power by allowing computers to make mistakes
You may have heard the expression, "Work smarter, not harder." When applied to humans, it means (partially) that we should do our best work on the tasks that are the most important, instead of wasting time and effort by going all out on every task. Well, that principle is now also being applied to computers. Using MIT's new Chisel system, computers are saving power by delegating less-critical tasks to less-dependable lower-energy hardware. This means mistakes may be made on those tasks, but that's OK.
Chisel is intended to be used mainly by programmers working on fairly high-end, complex projects.
The software scans programs for individual functions that require a lot of processing power. It then presents these to the programmer, and has them indicate how important it is that each one be executed as accurately as possible. Before they commit, however, users can choose the margin of error that they will tolerate for a given task, plus they can see a preview of how the function will work at that setting.
Tasks that are given a high priority are then processed using the computer's most dependable, energy-gobbling hardware. Not-so-important tasks, however, go to the lower-end circuits. An example of such a "some-mistakes-allowed" task would be the rendering of images, where one or two out-of-place pixels simply wouldn't be that big of a deal.
In simulations, the use of Chisel was found to result in energy savings ranging from 9 to 19 percent. The software is based on a previously-developed programming language known as Rely, in which users enter specific code when writing programs, to manually indicate which tasks are more error-tolerant.
Scientists at Rice University are also exploring the concept of putting up with minor errors in order to save energy, with an "inexact" chip which they claim is at least 15 times more efficient than current technology in terms of speed, energy consumption and size – and that's good enough to get lower-priority jobs done without too many mistakes.