Thursday, May 17th 2012

Computing Experts Unveil Superefficient ‘Inexact’ Chip

Researchers have unveiled an “inexact” computer chip that challenges the industry’s 50-year pursuit of accuracy. The design improves power and resource efficiency by allowing for occasional errors. Prototypes unveiled this week at the ACM International Conference on Computing Frontiers in Cagliari, Italy, are at least 15 times more efficient than today’s technology.

The research, which earned best-paper honors at the conference, was conducted by experts 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.

“It is exciting to see this technology in a working chip that we can measure and validate for the first time,” said project leader Krishna Palem, who also serves as director of the Rice-NTU Institute for Sustainable and Applied Infodynamics (ISAID). “Our work since 2003 showed that significant gains were possible, and I am delighted that these working chips have met and even exceeded our expectations.”

ISAID is working in partnership with CSEM to create new technology that will allow next-generation inexact microchips to use a fraction of the electricity of today’s microprocessors.

“The paper received the highest peer-review evaluation of all the Computing Frontiers submissions this year,” said Paolo Faraboschi, the program co-chair of the ACM Computing Frontiers conference and a distinguished technologist at Hewlett Packard Laboratories. “Research on approximate computation matches the forward-looking charter of Computing Frontiers well, and this work opens the door to interesting energy-efficiency opportunities of using inexact hardware together with traditional processing elements.”

The concept is deceptively simple: Slash power use by allowing processing components — like hardware for adding and multiplying numbers — to make a few mistakes. By cleverly managing the probability of errors and limiting which calculations produce errors, the designers have found they can simultaneously cut energy demands and dramatically boost performance.

One example of the inexact design approach is “pruning,” or trimming away some of the rarely used portions of digital circuits on a microchip. Another innovation, “confined voltage scaling,” trades some performance gains by taking advantage of improvements in processing speed to further cut power demands.

In their initial simulated tests in 2011, the researchers showed that pruning some sections of traditionally designed microchips could boost performance in three ways: The pruned chips were twice as fast, used half as much energy and were half the size. In the new study, the team delved deeper and implemented their ideas in the processing elements 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.”

Project co-investigator 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.”

Palem, the Ken and Audrey Kennedy Professor of Computing at Rice, who holds a joint appointment at NTU, said likely initial applications for the pruning technology will be in application-specific processors, such as special-purpose “embedded” microchips like those used in hearing aids, cameras and other electronic devices.

The inexact hardware is also a key component of ISAID’s I-slate educational tablet. The low-cost I-slate is designed for Indian classrooms with no electricity and too few teachers. Officials in India’s Mahabubnagar District announced plans in March to adopt 50,000 I-slates into middle and high school classrooms over the next three years.

The hardware and graphic content for the I-slate are being developed in tandem. Pruned chips are expected to cut power requirements in half and allow the I-slate to run on solar power from small 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.

This comparison shows frames produced with video-processing software on traditional processing elements (left), inexact processing hardware with a relative error of 0.54 percent (middle) and with a relative error of 7.58 percent (right). The inexact chips are smaller, faster and consume less energy. The chip that produced the frame with the most errors (right) is about 15 times more efficient in terms of speed, space and energy than the chip that produced the pristine image (left).Source: Rice.edu
Add your own comment

51 Comments on Computing Experts Unveil Superefficient ‘Inexact’ Chip

#1
Vinska
by: jamsbong
How is this different from a flawed CPU?
differece:

flawed CPU
vs.
intentionally flawed CPU in a controlled and specific way
Posted on Reply
#2
AphexDreamer
by: Jacez44
I don't think you guys understand.

The premise is that it gets a SLIGHTLY inaccurate result VASTLY more quickly.
Oh and uh, doesn't crash as a result or freak out!
Posted on Reply
#3
Perra
Very cool stuff! Guess it wouldnt work too good in a pacemaker or a nuclear power plant though :p
Posted on Reply
#4
Depth
This is reminding me more and more of the Improbability Drive from The Hitchhikers Guide To The Galaxy...

How does one program and accomodate for 8% failures in the CPU? How does the kernel not self destruct? After 1,000,000 binary strings 80,000 of them will be wrong, how does an OS support that?
Posted on Reply
#5
xBruce88x
what happens if it decides it can devide by zero?
Posted on Reply
#6
Maban
by: xBruce88x
what happens if it decides it can devide by zero?
Perhaps it will find that it's actually possible.
Posted on Reply
#7
Vinska
by: Depth
How does one program and accomodate for 8% failures in the CPU? How does the kernel not self destruct? After 1,000,000 binary strings 80,000 of them will be wrong, how does an OS support that?
Looking through OP again, I should say:

NOT a CPU with x% error rate,
But a DSP with x% error rate.

by: btarunr
applications for the pruning technology will be in application-specific processors, such as special-purpose “embedded” microchips like those used in hearing aids, cameras and other electronic devices.
Read: DSPs. ^^^^^
Posted on Reply
#8
qubit
Overclocked quantum bit
by: Fourstaff
No, they didn't go to Sardinia to unveil it. Rather, they gave themselves a holiday packaged as a conference, and decided that they should show the world their new toy while having their holiday.
That's just soo cynical. Love it. :laugh:
Posted on Reply
#9
Vinska
by: Maban
Perhaps it will find that it's actually possible.
Actually, in mathematics, dividing by zero is impossible in most cases. Yet there are special cases where dividing by zero is acceptable. So to say, it is actually possible.
There, Your joke's been ruined by me. Ain't I'm a stinker?
Posted on Reply
#10
brandonwh64
Addicted to Bacon and StarCrunches!!!
by: Darkrealms
So am I the only one that first thought: very fast processing + variable inaccuracy = illogical AI
Here comes terminator?
Nice avatar ;)
Posted on Reply
#11
Darkrealms
by: brandonwh64
Nice avatar ;)
Thanks : )
Posted on Reply
#12
SteveJK
by: Jacez44
I don't think you guys understand.

The premise is that it gets a SLIGHTLY inaccurate result VASTLY more quickly.
Ia m weriting this so fast i cnat write good, i thing you can understand my english but... wht the heck is that?

Do you imagine a world with dudes talking/writing like that? Creating CPUs with Inexact chips, for me, it's an involution.
Posted on Reply
#13
Frick
Fishfaced Nincompoop
by: SteveJK
Ia m weriting this so fast i cnat write good, i thing you can understand my english but... wht the heck is that?

Do you imagine a world with dudes talking/writing like that? Creating CPUs with Inexact chips, for me, it's an involution.
As said in the article, it depends entirely on application. Video and voice are perfect examples as they don't have to be perfect.
Posted on Reply
#14
AphexDreamer
Yeah when we talk on the phone bits are getting lost, but enough get through we don't even notice this missing bits.

We aren't computers and that is why we can read this.

Fi yuo cna raed tihs, yuo hvae a sgtrane mnid too. Cna yuo raed tihs? Olny smoe plepoe can. I cdnuolt blveiee taht I cluod aulclty uesdnatnrd waht I was rdanieg.

So yes its safe to have computers mess up at half the energy cost and twice the speed. It seems like a good idea in certain applications. Btw anyone with a normal IQ should be able to read that.
Posted on Reply
#15
Vinska
Not to mention, most of the data those chips are targeted to be used on, is in one way or another in analog form at least once before even reaching the said chip. In other words: the data it is targeted to gets distorted at least a little before even reaching the chip.
Inevitably, there is some amount of distortion in such processing, no matter if one uses such a chip, or not. So, there always must be some level of distortion threshold, where it is still "good enough". So, if the total data distortion with such a chip is below such threshold, then why the heck nawt?
Posted on Reply
#16
Jizzler
If it's good enough, then have at it :D

However, I've already lived through the early 90's once, don't care relive "modem-friendly media" again (although I do play Winnie the Poo Worhips Satan every now and then... such a classic).
Posted on Reply
#17
brandonwh64
Addicted to Bacon and StarCrunches!!!
by: Frick
As said in the article, it depends entirely on application. Video and voice are perfect examples as they don't have to be perfect.
You are right frick videos and voice do not have to be perfect


by: Darkrealms
Thanks : )
I am an infantry man too ;)
Posted on Reply
#18
Fourstaff
by: brandonwh64
You are right frick videos and voice do not have to be perfect
I can almost hear it: "My iPhone 10 has a better video quality than your shitty Samsung Galaxy S9"
Posted on Reply
#19
Vinska
by: Fourstaff
I can almost hear it: "My iPhone 10 has a better video quality than your shitty Samsung Galaxy S9"
And I can hear myself mumbling: "Why would anyone watch videos on a phone instead of using a computer with a good player, capable of properly decoding bad-ass encodes, on big-ass monitor, is beyond me."
Posted on Reply
#21
Vinska
by: hellrazor
It's like JPG for computations.
If You put it that way, now it makes me worry a little.
Jpeg is a good thing when used correctly. Yet, I see jpeg being painfully misused & abused way too often. So when You compare this to jpeg, I start to think what would be, if this technology gets (mis|ab)used at least as half as jpeg - that makes me shiver.
Posted on Reply
#22
sergionography
by: Depth
This is reminding me more and more of the Improbability Drive from The Hitchhikers Guide To The Galaxy...

How does one program and accomodate for 8% failures in the CPU? How does the kernel not self destruct? After 1,000,000 binary strings 80,000 of them will be wrong, how does an OS support that?
well i doubt this will be for a general purpose cpu, it could be a feature to enable better performance or so, it makes sense on graphic cards im my opinion but not for cpu calculations or appls



by: Vinska
Looking through OP again, I should say:

NOT a CPU with x% error rate,
But a DSP with x% error rate.



Read: DSPs. ^^^^^
or for THIS^

by: Maban
Perhaps it will find that it's actually possible.
well it might assume 0 is 0.000975 or something, and then its possible, but i think this is more like if a cpu miscalculates something it simply doesnt bother to leave it in the cache queue and return it to be reprocessed and simply just passes it, so you end up with much lower latencies hence better efficiency, so its pretty unpredictable what it will calculate
Posted on Reply
#23
Kreij
Senior Monkey Moderator
I'm all for it as long as the processors are unlocked.
Would be fun seeing if you could get that 0.25% error rate up by a factor of 10 or so.
Posted on Reply
#24
FordGT90Concept
"I go fast!1!11!1!"
I don't think this can work in a CPU, it would have to be part of a GPU design. If the CPU so much as hits the wrong memory address, everything crashes and burns. GPU, on the other hand, rarely has to be accurate.
Posted on Reply
#25
Fourstaff
by: FordGT90Concept
I don't think this can work in a CPU, it would have to be part of a GPU design. If the CPU so much as hits the wrong memory address, everything crashes and burns. GPU, on the other hand, rarely has to be accurate.
That is the whole point of this processor: to hit all as many wrong buttons as they possibly can, without crashing the system.
Posted on Reply
Add your own comment