(PhysOrg.com) -- Researchers in the U.S. have discovered allowing silicon chips to make errors could ensure computers continue to become more powerful, while using less energy.
Makers of silicon chips struggle to squeeze more performance out of chips for the same power, but the latest research findings suggest they could provide greater performance with lower power requirements if the rules governing how chips work were relaxed.
Moore’s Law predicts that the number of transistors (tiny switches) that can fit on a given area of silicon for a given price will double every 18-24 months, and this Law has been followed by reducing the size of transistors, which generally results in more powerful processing. The problem is that as the transistors become smaller their reliability and variability become issues.
Rakesh Kumar, Assistant Professor of Computer Engineering at the University of Illinois at Urbana-Champaign, thinks the insistence on making silicon chips operate with no errors is hastening the end of Moore’s Law and forcing chip manufacturers to run the chips at a higher power than necessary just to ensure the chips never make mistakes. A sizeable proportion of chips also have to be rejected if they are less than perfect, and this increases manufacturing costs. The problems are all worsening as the size of components continues to decrease.
In an interview with the BBC Professor Kumar said that instead of insisting on perfect, error-free chips, we should embrace the imperfections to make what he calls “stochastic processors” that will be allowed to make random errors. He pointed out that the hardware is already stochastic, which means it is not flawless, and spending more money to make it appear to be flawless is a waste.
Kumar and colleagues are putting these ideas into practice by designing chips that are not flawless, and then managing the number and type of errors. This can reduce the power consumption by up to 30 percent, and the reduction is even 23 percent with error rates of just one percent.
Professor Kumar said the errors will not usually have a significant effect on a computer, but in other cases they could cause a computer to crash. To counteract this, the team is investigating ways to make applications that respond to errors by simply making the execution of instructions take longer, or which use a log of a user’s actions to identify unexpected errors. This research may be useful for making existing applications better able to cope with errors that already occur.
Explore further: Computer-assisted accelerator design