×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

'Inexact' Chips Save Power By Fudging the Math

Soulskill posted about 2 years ago | from the for-sufficiently-large-values-of-1 dept.

Math 325

Barence writes "Computer scientists have unveiled a computer chip that turns traditional thinking about mathematical accuracy on its head by fudging calculations. The concept works by allowing processing components — such as hardware for adding and multiplying numbers — to make a few mistakes, which means they are not working as hard, and so use less power and get through tasks more quickly. The Rice University researchers say prototypes are 15 times more efficient and could be used in some applications without having a negative effect."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

325 comments

Prediction (5, Funny)

Anonymous Coward | about 2 years ago | (#40040643)

37 posts about the Pentium division bug.

Re:Prediction (5, Funny)

Anonymous Coward | about 2 years ago | (#40040673)

You just deprived someone of their +5 Funny, you bastard.

Re:Prediction (5, Funny)

Chrisq (894406) | about 2 years ago | (#40041157)

You just deprived someone of their +5 Funny, you bastard.

My computer makes it a +4.7 funny.

Turtles all the way down (0, Offtopic)

agentgonzo (1026204) | about 2 years ago | (#40040743)

They could be useful in a few small circumstances, but for the vast majority of cases, I'd be interested in how a speed payoff is going to be beneficial given you don't know whether you got the correct answer. You could run a check to see whether it's correct, but then you can't trust the check to give you the right answer either... so you could run a third check...

Re:Turtles all the way down (5, Insightful)

L4t3r4lu5 (1216702) | about 2 years ago | (#40040815)

Oh you misunderstand. It will still return the "right" answer, it'll just be "engineer" right, not "mathematician" right, i.e. "Good enough for all intents and purposes.

Furthermore, posting under the top post when your reply is nothing to do with the OP is considered a faux pas. Minus 50 DKP.

Re:Turtles all the way down (1, Insightful)

jythie (914043) | about 2 years ago | (#40040973)

Sounds about right, which would probably be a good thing. Too many programmers are obsessed with getting the mathematically correct answer to a precision that can have no actual impact on whatever they are trying to accomplish (or even worse, is rendered 'wrong' anyway by FP limitations of the language or chip anyway).

Re:Turtles all the way down (0)

Anonymous Coward | about 2 years ago | (#40040917)

1. Buy 3 of these chips that claim to be 15 times more efficient.
2. Run them in parallel, return the majority answer.
3. Market your triple-vote-chip as exact and 5 times more efficient.
4. Profit!!!

Re:Turtles all the way down (2)

swillden (191260) | about 2 years ago | (#40041099)

They could be useful in a few small circumstances, but for the vast majority of cases, I'd be interested in how a speed payoff is going to be beneficial given you don't know whether you got the correct answer. You could run a check to see whether it's correct, but then you can't trust the check to give you the right answer either... so you could run a third check...

Clearly, the answer is to run 14 checks.

Re:Turtles all the way down (1)

tompaulco (629533) | about 2 years ago | (#40041103)

I just returned from a conference where pretty much everybody there said that they would be willing to sacrifice extra time and power for a more accurate answer. Sounds like these guys have come up with pretty much the opposite of that. Where do I avoid signing up?

Re:Turtles all the way down (3, Insightful)

networkBoy (774728) | about 2 years ago | (#40041179)

What about in a RT rendering (game/BD-Rom decode) situation, or a RT communication (Skype) situation?
Both of these do not need exact values, just close enough, and even if there was an error it will be transient and gone almost as fast as it was noticed?
-nB

Re:Turtles all the way down (3, Interesting)

Anonymous Coward | about 2 years ago | (#40041117)

GPS. I don't need to know that I'm precisely in the middle of the left lane of the 4-lane highway going 59.2MPH. I'd rather it use the processor for screen refreshes and finding a better route around Dallas or Chicago at Rush Hour.

Scales at the checkout - the faster is gets a reading on how much my apples weigh, the faster I get away from the "People of Wal-Mart" and I'll bet there's less than a penny difference anyway.

Video Games (see GPS) - many switch to integer maths already for speed, how about fuzzy integers? ;)

DHS airport scanners - the faster they scan, the less I'll glow in the dark

Re:Turtles all the way down (4, Interesting)

cpu6502 (1960974) | about 2 years ago | (#40041147)

I envision the "less precise" CPUs being used in consumer laptops where people are just watching movies or listening to music.

It does not matter if the MPEG4 conversion is slightly off with the color, because the consumer's eye won't detect it. The selling point will be a laptop or tablet that lasts 10x longer on a battery charge.

Re:Turtles all the way down (2)

anyGould (1295481) | about 2 years ago | (#40041201)

I envision the "less precise" CPUs being used in consumer laptops where people are just watching movies or listening to music.

It does not matter if the MPEG4 conversion is slightly off with the color, because the consumer's eye won't detect it. The selling point will be a laptop or tablet that lasts 10x longer on a battery charge.

In other words, the Walmart Netbook?

Re:don't know if you got the right answer (1)

TaoPhoenix (980487) | about 2 years ago | (#40041167)

I've been interested in AI this month, and there's a really awesome application here for AI. Part of what makes people what we are is that we can't get certainty on a lot of our answers. Some guesses are good, some are spectacularly wrong. So if you build self awareness of that in the chip, it will need to use "damage control logic" to recover "socially" if it makes a mistake.

Same theme, we could get some really funny results when chips make that mistake and accidentally "get angry".

Re:Turtles all the way down (2, Informative)

isopropanol (1936936) | about 2 years ago | (#40041171)

I haven't RTFA yet, but I strongly suspect that there would be different instructions when accuracy matters (ie program flow control), from where it's not as important (ie signal processing).

Re:Turtles all the way down (1)

MightyYar (622222) | about 2 years ago | (#40041245)

I'd be interested in how a speed payoff is going to be beneficial given you don't know whether you got the correct answer

I imagine certain applications that run in a loop, where the results from the previous calculation are fed back into the next calculation... so long as the error is within some limits, all you would do is increase the number of iterations - which may not be a problem if you can run them 15 more times than you could before.

And of course there are some applications where you are just running in a loop forever - depending on the nature of the error (are they Gaussian?) - it might be perfectly acceptable to have dead-reckoning errors in a phone's GPS/location routine for instance. Compressing voice in a phone, perhaps? The input is already messy analog audio, so maybe a little "digital" noise won't be too noticeable - like in that picture they use in TFA.

In any event, it certainly is interesting work.

Re:Prediction (5, Funny)

Anonymous Coward | about 2 years ago | (#40040843)

36.9999995796 posts about the Pentium division bug.

Fixed that for you.

Re:Prediction (1)

Zordak (123132) | about 2 years ago | (#40041149)

37 posts about the Pentium division bug.

By my estimation, at least half of the Slashdot readership isn't even old enough to remember the Pentium division bug.

Re:Prediction (0)

Anonymous Coward | about 2 years ago | (#40041197)

And your data goes f00f.

Graphics cards (3, Interesting)

Anonymous Coward | about 2 years ago | (#40040645)

Don't they do this too, but fudge the maths so they can be a bit faster?

Hence the Cuda stuff needed special modes to operate in IEEE floats etc...

Re:Graphics cards (4, Insightful)

Anonymous Coward | about 2 years ago | (#40040779)

Big difference between not dealing with full precision and encouraging erroneous behavior by trimming infrequently chunks of hardware.

Re:Graphics cards (0)

Anonymous Coward | about 2 years ago | (#40041125)

... trimming infrequently chunks of hardware.

And by trimming random words from sentences!

Obligatory (0)

Anonymous Coward | about 2 years ago | (#40040649)

Meh. Close enough.

Intel (-1)

Anonymous Coward | about 2 years ago | (#40040655)

See, Intel just didn't have the right marketers with their MMX chips

Old? (1)

Anonymous Coward | about 2 years ago | (#40040659)

I read about that like 3 years ago, if not more.

Re:Old? (0)

Anonymous Coward | about 2 years ago | (#40040699)

Isn't this essentially what -ffast-math is for?

3 years, 3 months, 9 days, 20.5 hrs ago (4, Informative)

oneiros27 (46144) | about 2 years ago | (#40041069)

http://tech.slashdot.org/story/09/02/08/1716235/sacrificing-accuracy-for-speed-and-efficiency-in-processors [slashdot.org]

Of course, you might've been sacrificing speed for accuracy in that 3 year estimate.

(and for all of the nay sayers -- I could see this being great for monte carlo simulations or other modeling where you're dealing with so much imprecise inputs that minor error's not going to be significant)

AI Chip (2)

foobsr (693224) | about 2 years ago | (#40040685)

Will these chips also boost attempts at achieving AI again?

CC.

Re:AI Chip (1)

MyLongNickName (822545) | about 2 years ago | (#40040767)

What exactly does imprecise math have to do with AI? Intelligent systems may use heuristics, but that is not the equivilent (far from it) as not doing proper math.

Re:AI Chip (5, Insightful)

trum4n (982031) | about 2 years ago | (#40040845)

Humans tend to do fast imprecise math to decided when to cross the street. It looks like that car won't hit me, but i can't say its going to take 4.865 seconds for it to get to the crosswalk. Estimations, even if fudged and almost completely wrong, should play a massive role in AI.

Re:AI Chip (1)

MyLongNickName (822545) | about 2 years ago | (#40040941)

Humans aren't doing math at all in those situations. Hence, dumbing down a computer's math will not make it more "intelligent". Intelligent systems that are being designed today take advantage of a myriad of techniques developed over the past few decades. Path finding systems use different types of tree search algoritms. Self-driving cars will use a pair of cameras to judge distance and relative speed of external objects. In neither of these cases does imprecise math help the intelligence of they system.

Re:AI Chip (1)

3.5 stripes (578410) | about 2 years ago | (#40041055)

We're not doing math? What is it we're doing then?

Re:AI Chip (1, Insightful)

Anonymous Coward | about 2 years ago | (#40041113)

Did you really want a long-winded answer about how the conditioning of the wetwired neural network in your skull responding to external visual stimuli works? It's not math, it's chemical potentials at the neuron level. At a higher level, it's an estimate of depth perception vs. how fast you think you can walk (or run) across that street. No math involved, just spatial guesstimates of that brain of yours.

Re:AI Chip (1)

MyLongNickName (822545) | about 2 years ago | (#40041177)

Thanks, AC, you are quite right. The more you learn about neural networks, artificial neural networks and computer AI, the more you doubt that there is such a thing as intelligence :)

Re:AI Chip (5, Insightful)

bmo (77928) | about 2 years ago | (#40041257)

Which is... math.

Just because something doesn't involve digits doesn't mean it's not math. I suggest you look up analogue computers, because that's what you just described - a neural net acting as an analogue computer.

--
BMO

Re:AI Chip (1)

Applekid (993327) | about 2 years ago | (#40041163)

In neither of these cases does imprecise math help the intelligence of they system.

It might, if the fuzzy math enables calculations 10,000 times a second instead of 10 times a second.

Re:AI Chip (3, Interesting)

SharpFang (651121) | about 2 years ago | (#40041247)

Your definition of math is very limited. Descriptive Geometry is math too.

Path finding systems may use imprecise weight function when making decisions - calculating weights is a major burden.

Using cameras involves image analysis. In essence, you're working with what is a bunch of noise, and you analyze it for meaningful data, by averaging over a whole bunch of unreliable samples. If you can do it 15 times faster at cost of introducing 5% more noise in the input stage, you're a happy man.

In essence, if input data is burdened by noise of any kind - and only "pure" data like typed or read from disk isn't, any kind of real world data like sensor readouts, images or audio contains noise, the algorithm must be resistant to said noise, and a little more of it coming from math mistakes can't break it. Only after the algorithm reduces say 1MB of raw pixels into 400 bytes of vectorized obstacles you may want to be more precise.... and even then small skews won't break it completely.

Also, what about genetic algorithms, where "mistakes" are introduced into the data artificially? They are very good at some classes of problems, and unreliable calculations at certain points would probably be advantageous to the final outcome.

scifi AI (0)

Anonymous Coward | about 2 years ago | (#40040689)

a basis for AI that can make quick inexact decisions?

Target Market (5, Funny)

SJHillman (1966756) | about 2 years ago | (#40040691)

These chips will, of course, be aimed at government markets.

Re:Target Market (2)

Tastecicles (1153671) | about 2 years ago | (#40040889)

who will be using them in the next generation of missile guidance systems.

So they'll be able to put a warhead through a window still, just that they don't know if it'll be $Dictator's window or the kindergarten next door... oh, wait.

Re:Target Market (1)

Anonymous Coward | about 2 years ago | (#40040933)

When your models are wrong, the only chance to arrive at the good result is to make mistakes in your calculations.

Re:Target Market (0)

Anonymous Coward | about 2 years ago | (#40041107)

Make a law that define PI = 3
enough said...

Re:Target Market (0)

Anonymous Coward | about 2 years ago | (#40041219)

For those that don't understand decimal points or fractions or math really, setting something like pi = 3, and make everybody use that definition would greatly eliminate cheating in measurements. It wouldn't be exact, but it would be precise and useful. whats worse: getting the same slightly inexact answer, or 2 different answers? And then remember that most people don't like math or care to learn. And this would make sense.

What could possibly go wrong? (1)

HoboCop (987492) | about 2 years ago | (#40040745)

Someone somewhere will end up killing people with this.

Re:What could possibly go wrong? (1)

Anonymous Coward | about 2 years ago | (#40040895)

Give it some time and your computer's going to tell you that your corn fields crave brawndo.

accounting depts are gonna love this :) (1)

youn (1516637) | about 2 years ago | (#40040765)

I can already hear people arguing "no, no, I did not fudge with the numbers, it's the computer chip" :)

Re:accounting depts are gonna love this :) (1)

clickclickdrone (964164) | about 2 years ago | (#40041169)

I can already hear people arguing "no, no, I did not fudge with the numbers, it's the computer chip" :)

I think they must have used one of those in the computer they used to decide if Greece was up to joining the Euro.

Skynet Avoided (2)

splashd (17729) | about 2 years ago | (#40040769)

At least our eventual computer overlords won't be able to count accurately to be sure they've eliminated all of us...

Alright, (2)

ddd0004 (1984672) | about 2 years ago | (#40040791)

From here on out, I'm requiring my chips to show their work. And, it better not look the same as the work that that northbridge chip you are sitting next to.

Seems like nothing new (3, Insightful)

CastrTroy (595695) | about 2 years ago | (#40040799)

Seems like nothing new to me. Floating point binary math is basically used for the same reason. It gives us and answer that's close enough, without requiring too much computation time. And it causes all sorts of fun since even simple numbers like 0.1 can't be represented exactly in binary floating point. Binary floating point works well for scientific apps, but fails quite badly at financial apps. I think this is basically taking floating point to the next level where the calculations are even more off. Which might work for certain applications, but for other types of applications would be completely catastrophic. What really bothers me is languages and platforms that provide no ability to work with numbers in a decimal representation.

Re:Seems like nothing new (0)

Anonymous Coward | about 2 years ago | (#40040905)

Well, I'll just say the 6502 had a BCD mode which I've never seen on any Intel processor.

6502: PHB Ready since 1976.

Re:Seems like nothing new (1)

mzs (595629) | about 2 years ago | (#40041189)

What? Like there is a carry flag, there is an adjust flag, it's set every time (unlike needing to use adc say). You just do the normal add, sub, or mul. Then daa, das, or aam respectively to adjust the values to BCD.

Whatcouldpossiblygowrong (3, Interesting)

bjourne (1034822) | about 2 years ago | (#40040801)

Before someone comes up with that stupid remark, not much. :) If the chips are 15 times as efficient as normal ones, it means that you could run for instance four in parallel and rerun each calculation in which one of them differs. That way you would both get both accurate calculations and power savings. Modify the number of chips to run in parallel depending on the accuracy and efficiency needed.

Re:Whatcouldpossiblygowrong (0)

Anonymous Coward | about 2 years ago | (#40040925)

and how do you know which one is right?

With 4 chips, you can get 4 different answers.

Evev if you do 5 chips there is a problem (1)

RobertLTux (260313) | about 2 years ago | (#40040993)

what happens when the "Minority Report" is actually CORRECT??

now if you are doing a calc with 9 significant digits and you are only using 5 then if the error is limited to the "extra" digits then it might work (or if the error is in a predictable range).

Do you really want the ropes supporting you 800 meters above the ground to have had their strength OVER estimated??

Re:Whatcouldpossiblygowrong (3, Funny)

Roujo (2577771) | about 2 years ago | (#40041049)

and how do you know which one is right?

With 4 chips, you can get 4 different answers.

The slowest one to give the answer, clearly. =P

Re:Whatcouldpossiblygowrong (1)

MsWhich (2640815) | about 2 years ago | (#40040953)

Well, you weren't in time before I (among others) came up with that stupid remark, but quality info is always acceptable in lieu of timeliness, so I think it's OK.

Re:Whatcouldpossiblygowrong (1)

Anonymous Coward | about 2 years ago | (#40041145)

No, you'll get the same imprecise answer 4 times. It's still perfectly deterministic, it just has a much lower effective precision (and more to the point, the precision depends on the details of the calculation).

Re:Whatcouldpossiblygowrong (4, Insightful)

Hentes (2461350) | about 2 years ago | (#40041211)

If I'm reading the article right, the chips are still deterministic, they just don't care about a few rare edge cases. So whether there is an error or not depends on the input, and in your case all four chips will make the same mistake. What you could try is modify the input a little for each rerun and try to interpolate the result from that, but that won't give you perfect accuracy.

PI (4, Funny)

Rik Sweeney (471717) | about 2 years ago | (#40040809)

"This isn't so much a circle as a square, what the hell's going on?!"
"Oh, that's because the chip in your machine doesn't accurately define PI, it rounds the value up"
"To what?"
"4"

A monkey job (3, Funny)

Corson (746347) | about 2 years ago | (#40040923)

In more recent news, computer scientists determined that monkeys can get the same job done even faster, and by using even less power, and by making, um... a lot more mistakes.

Re:A monkey job (0)

Anonymous Coward | about 2 years ago | (#40041237)

In more recent news, computer scientists determined that monkeys can get the same job done even faster, and by using even less power, and by making, um... a lot more mistakes.

They have proved it by an experiment in the White-house.

It has a name at my workplace (1)

Urban Garlic (447282) | about 2 years ago | (#40040951)

Where I work, we call this "the much-faster 'wrong' algorithm". It's frequently a side-effect of overly-enthusiastic attempts at optimization, sometimes by people, and sometimes by compilers.

American Chips (4, Funny)

paleo2002 (1079697) | about 2 years ago | (#40040989)

This is exactly the problem with American chips lately. They're too lazy to put any effort into their work. Sure, they're "saving energy" but that just means they're going to become even more obese. Chips from many Asian manufacturers are already much more accurate and efficient than American ones. We need to encourage American chips to be more interested in STEM fields if we're ever going to turn our economy around!

I tried this in high school (3, Funny)

tomhath (637240) | about 2 years ago | (#40040995)

the concept works by allowing processing components — such as hardware for adding and multiplying numbers — to make a few mistakes, which means they are not working as hard

But my math teacher didn't understand the important difference between efficient and lazy.

High School Concept (2)

rodrigoandrade (713371) | about 2 years ago | (#40041005)

The concept works by allowing processing components â" such as hardware for adding and multiplying numbers â" to make a few mistakes, which means they are not working as hard, and so use less power and get through tasks more quickly.

This concept was used a lot back in my high school.

We used to call that analog :-) (0)

Anonymous Coward | about 2 years ago | (#40041059)

For signal processing this would be great. Lost art: analog multipliers, integrators and stuff...

15 times less efficient (1)

tompaulco (629533) | about 2 years ago | (#40041153)

Of course, we can't trust that number if it was run on the chips in question. What is the margin of error? Plus or minus two to the fourth power?

LOL (2)

TheSkepticalOptimist (898384) | about 2 years ago | (#40041159)

Wow, so the goal to be Green in the future is to introduce more bugs into hardware to save power. While I am sure there are limited uses of this kind of "math" in general I don't believe these chips will have widespread adoption because mathematical accuracy, at least for integer values, is kind of critical for most applications. Its hard enough for developers to predict the random an idiotic nature of the users of their software, now they have to build protection against hardware throwing them random results.

This instantly reminded me of a developer that claimed a 1200% improvement in performance after he optimized some code. The developer wasn't particularly skilled and some senior level guys had already optimized the performance about as far as it could be taken, so we were dubious. We found after a code review that basically this developer has improved the efficiency of the software by skipping some critical intensive calculations that was the point of the software.

Sure you could claim that this optimization is greener then the original code because the CPU is not working as hard, but if you are not going to get the expected results, f*ck being green.

Saves energy by not bothering to get things right! (0)

Chrisq (894406) | about 2 years ago | (#40041195)

Saves energy by not bothering to get things right!

They should name this chip "The Latino".

Sounds good but (1)

medv4380 (1604309) | about 2 years ago | (#40041235)

As much as good enough might save power, good enough doesn't cut it once you start using Currency. As long as these stay away from accountants and banks that's fine, but will they is the issue.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...