Path: EDN Asia >> News Centre >> IC/Board/Systems Design >> Unreliable chips leveraged to boost computer performance
IC/Board/Systems Design Share print

Unreliable chips leveraged to boost computer performance

08 Nov 2013

Share this page with your friends

A research team at the Massachusetts Institute of Technology (MIT) may have found a way to address the diminishing reliability of computer chips as transistors become erroneous because of their shrinking size. Led by Martin Renard of MIT's Computer Science and Artificial Intelligence Laboratory, the group designed a language system called Rely, which calculates the tolerability of program errors and the probability that the software will execute commands accordingly. The Rely system, which determines whether a processor should prioritise execution speed or power savings, was presented at the Association for Computing Machinery's Object-Oriented Programming, Systems, Languages and Applications conference.

Rely begins with a specification of the hardware on which a program is intended to run. That specification includes the expected failure rates of individual low-level instructions, such as the addition, multiplication, or comparison of two values. Rely assumes that the hardware also has a failure-free mode of operation—one that might require slower execution or higher power consumption.

A developer who thinks that a particular program instruction can tolerate a little error simply adds a period-a "dot," in programmers' parlance-to the appropriate line of code. So the instruction "total = total + new_value" becomes "total = total +. new_value." Where Rely encounters that telltale dot, it knows to evaluate the program's execution using the failure rates in the specification. Otherwise, it assumes that the instruction needs to be executed properly.

Compiler applications typically produce what's called an "intermediate representation," a generic low-level program description that can be straightforwardly mapped onto the instruction set specific to any given chip. Rely steps through the intermediate representation, folding the probability that each instruction will yield the right answer into an estimation of the overall variability of the program's output.

The existing version of Rely enables a programmer to re-evaluate his or her code, which generally takes no more than a few seconds, in the event that an unacceptably low probability of success stems from permitting a few errors.

The team is currently working on a version of the system that allows the programmer to simply specify the accepted failure rate for whole blocks of code: say, pixels in a frame of video need to be decoded with 97 per cent reliability. Rely would then go through and automatically determine how the code should be modified to both meet those requirements and maximise either power savings or speed of execution.

Want to more of this to be delivered to you for FREE?

Subscribe to EDN Asia alerts and receive the latest design ideas and product news in your inbox.

Got to make sure you're not a robot. Please enter the code displayed on the right.

Time to activate your subscription - it's easy!

We have sent an activate request to your registerd e-email. Simply click on the link to activate your subscription.

We're doing this to protect your privacy and ensure you successfully receive your e-mail alerts.

Add New Comment
Visitor (To avoid code verification, simply login or register with us. It is fast and free!)
*Verify code:
Tech Impact

Regional Roundup
Control this smart glass with the blink of an eye
K-Glass 2 detects users' eye movements to point the cursor to recognise computer icons or objects in the Internet, and uses winks for commands. The researchers call this interface the "i-Mouse."

GlobalFoundries extends grants to Singapore students
ARM, Tencent Games team up to improve mobile gaming

News | Products | Design Features | Regional Roundup | Tech Impact