LONDON – Processing circuitry that has been designed to allow imprecision has been shown to be 15 times more power efficient than conventional circuitry at performing some tasks. The technique is particularly applicable in audio and graphical subsystems and such circuits could start showing up in hearing aids and tablet computers in 2013, researchers said.
A prototype processor was built by a team of researchers from Rice University in Houston, Singapore’s Nanyang Technological University (NTU), Switzerland’s Center for Electronics and Microtechnology (CSEM) and the University of California, Berkeley and reported on at the ACM International Conference on Computing Frontiers in Cagliari, Italy, where it won best paper.
The concept, which has echoes of fuzzy logic and probablistic processing, is straightforward: allow hardware for operations such as multiplication and adding to make mistakes but manage the probability of errors building up.
The team has used a number of techniques to deviate from conventional full-precision, absolute accuracy circuits. These include "pruning" where the team cuts away rarely used portions of a digital circuit and "confined voltage scaling."
In initial simulations published in 2011, the team showed how "pruned" sections of conventionally designed chips could run twice as fast and be half the size and use half the energy of the originals. In the latest research the team has implemented their ideas on a prototype silicon chip.
"In the latest tests, we showed that pruning could cut energy demands 3.5 times with chips that deviated from the correct value by an average of 0.25 percent," said study co-author Avinash Lingamneni, a Rice graduate student. "When we factored in size and speed gains, these chips were 7.5 times more efficient than regular chips. Chips that got wrong answers with a larger deviation of about 8 percent were up to 15 times more efficient."
Christian Enz, who leads the CSEM arm of the collaboration, said: "Particular types of applications can tolerate quite a bit of error. For example, the human eye has a built-in mechanism for error correction. We used inexact adders to process images and found that relative errors up to 0.54 percent were almost indiscernible, and relative errors as high as 7.5 percent still produced discernible images."
Project leader Krishna Palem, who also serves as director of the Rice-NTU Institute for Sustainable and Applied Infodynamics (ISAID) said initial applications for pruning are likely to be in application-specific processors, used in hearing aids, cameras and other electronic devices.
Inexact hardware is also being considered for ISAID's I-slate educational tablet, which is designed for Indian classrooms. Pruned chips are expected to cut power requirements in half and allow the I-slate to run from small solar panels similar to those used on handheld calculators. Palem said the first I-slates and prototype hearing aids to contain pruned chips are expected by 2013.
While approximate computation may be most readily used for processing data for human sensory input, it could also be useful for certain test-and-confirm type problems (where an approximate test--not even necessarily absolutely excluding false negatives--can filter out a majority of uninteresting results [distributed computing projects tend to work this way, the Large Hadron Collider also uses data filtering which _might_ be amenable to approximation if the false negative probability was sufficiently low]).
Something like a search engine could probably use approximate computation (the result is a list sorted by estimated fitness).
It might be possibly to increase the effectiveness of a safety system by allowing the use of more data and more processing even though the processing is approximate. Likewise, a self-correcting system (e.g., a flight control system) could tolerate minor errors.
Much simulation is effectively approximate (e.g., modelling of the gravity of distant objects as a single point object) already. In addition, measurements are inherently approximate and incomplete, so using approximate computation might be less inaccurate than one might naively expect.
Error detection and correction are also probabilistic, and so might be able to use approximate computation (Lyric Semiconductor's ECC product?).