Slashdot Mirror


Unpredictability in Future Microprocessors

prostoalex writes "A Business Week article says increase in chip speeds and number of transistors on a single microprocessor leads to varying degrees of unpredictability, which used to be a no-no word in the microprocessor world. However, according to scientists from Georgia Tech's Center for Research in Embedded Systems & Technology, unpredictability becomes a great asset leading to energy conservation and increased computation speeds."

11 of 244 comments (clear)

  1. Re:Three cheers! by fm6 · · Score: 2, Interesting

    How can you cheer for something that will eventually kill you?

  2. its a trick! by Foktip · · Score: 1, Interesting

    Intel's just saying that to draw your attention away from IBM's cell! Its a trick, dont listen to them; theyre just making this stuff up!

  3. TFA by shirai · · Score: 5, Interesting

    It is an interesting idea but I think there would have to be a lot of research that goes into this and here's what I mean.

    The article is right in that certain things don't need 100% accuracy and that small variations in the answers can yield very good results. This could be important when time is more important than 100% accuracy.

    That said, how do we know if the variations are small? Only 1 bit can change a huge negative number into a huge positive number in a standard integer (Okay, I haven't looked at the bit layout of an integer lately but I think it's encoded like this. If not, you still get my point right?).

    So perhaps then this idea sort of works when we are aggregating lots of small calculated numbers but then switch to a traditional chip to add them together.

    You see what I'm getting at? Computers don't really know that the small variation at the most significant bit is actually a huge variation.

    I think there would also have to be a lot of analysis based on understanding how the variations add up and their cumulative effect. For example, a well written app under this scenario means that the errors basically average out over time as opposed to errors that blow out of proportion.

    Anyways, I can think of a few good uses for this. Probably the most notable being down the DSP path (which the article metions). Our eyes probably wouldn't see small errors in an HD display during processing or hear small errors in audio processing.

    This is parallel to the fact that there is less error checking in audio CDs and video DVDs than their computer counterparts CD-ROM and DVD-ROM (or the R/RW/etc.etc. counterparts).

    --
    Sunny

    Be my Friend

    1. Re:TFA by buraianto · · Score: 2, Interesting

      Or, you have a random bit change in your opcode and suddenly you're doing a muliply instead of an add. Or your opcode is an invalid one and your processor halts. Yeah, I don't think this makes sense given our current way of doing microprocessors. We'd have to do it some other way.

    2. Re:TFA by fm6 · · Score: 2, Interesting
      That said, how do we know if the variations are small? Only 1 bit can change a huge negative number into a huge positive number in a standard integer (Okay, I haven't looked at the bit layout of an integer lately but I think it's encoded like this. If not, you still get my point right?).
      Sure, if you continue to use an encoding that doesn't tolerate errors. The math is beyond me, but I know there are ways to encode numbers so that a single-bit error nudges a value slightly, instead of changing it in wildly unpredictable ways.

      Also, a lot of computing deals mainly with string values, like the Google example in the story. Even without a random element in the calculations, it's hard to predict exactly what page will come out on top of a Google ranking. If the ordering's slightly different, nobody will care.

      And that's assuming that Google's secret algorithms don't already have a random element. Something I wouldn't rule out!

    3. Re:TFA by Epistax · · Score: 3, Interesting

      I think you're thinking of things to specifically. Think about the human mind. It's utterly insane in speed, yet completely analog. Digital systems cannot yet grasp anywhere near the computing power of the human brain, yet they can beat the brain in any single (non-fuzzy) pursuit (such as chess). The human brain accels at fuzzy (yes, fuzzy) calculations such as identifying faces. It's quite possible we'll never be able to make a computer faster at identifying faces than the human brain without directly stealing our algorithm because it's the single thing we're best at.

      So, we can identify faces really, really well. So well that :) looks like a face despite the fact that it seriously shouldn't. Well, guess what? What if we change identifying faces into identifying something else? Perhaps a computer can identify things in data using fuzzy logic very easily--- what could we do with that? Now we'll always need the truly quasi-100% accurate side unless we're relying on a self-evaluating true AI, so I'm not arguing with that.

      Looking back, this isn't really a response to what you wrote, but moreover it's a thing that I type after I drank alcohol, but I think it stands on its own merit. Anyway a lot of research is needed and I'm, sure we can agree on that. It'a certainly interesting.

  4. Analog Processor by 10101001+10101001 · · Score: 5, Interesting

    It sounds like this is just another implementation of an analog processor, which is far from a new idea. Really simple analog processors are just a bit of plastic foam used as a manifold. There's even the idea of having 0, 1, and 1/2 (where 1/2 is seen as uncertain) in something called a Lukasiewicz Logic Array. Anyways, I wish the guy good luck with it, though it might be a good idea if he did some more reading on ideas already presented on the subject.

    Obvious google search link:
    Google Search for "lukasiewicz analog"

    --
    Eurohacker European paranoia, gun rights, and h
  5. Probabilistic algorithms by timeOday · · Score: 2, Interesting
    In college, my professor challenged the entire class to find an algorithm that takes an array, and returns a single value larger than the median of values in the array, in sub-linear time.

    Naturally, he had us stumped, because the task is impossible. Without checking at least half the numbers, you can't be sure of the answer.

    But, he pointed out, here's what you can do: pick 1000 numbers from the array at random and return the largest - a constant time operation! This "algorithm" just might return a wrong answer. But the chances of that happening are far less than the odds that you're in a nuthouse hallucinating this message right now. The odds are far less than the liklihood that a computer would botch a deterministic algorithm during executation anyways. The odds of making a mistake with the algorithm are 0, for all intents and purposes. So is that OK?

  6. I, for one... by melikamp · · Score: 2, Interesting

    That is one step closer to a human-like AI -- reminds me of a neural net. The technology from TFA may be just what they (computers) need to become like us: i.e. an ability to make quick decisions about complex problems, and succeeding more often than failing.

    I, for one, welcome our unpredictable silicon overlords.

  7. Hybrid machines. by headkase · · Score: 2, Interesting

    It seems to me that these chips would not replace the standard digital cpu's we have today, however they would instead complement their abilities. Adding a stochastic simulator chip would create a hybrid digital/probabilistic computer. Depending on the type of information that was being processed different chips would be employed. Your intel/amd chip would still do the digital/lossless functions while the stochastic chip would process data that is more resistant to loss of information or lossy.

    --
    Shh.
  8. Not quite right by Anonymous Coward · · Score: 1, Interesting

    Actually the problem isn't speed or the number of transistors, the real problem is feature size. Current technology (the state of the art) is 90 nm. With larger features (transistor dimensions), you might have 100 million electrons turning 'on'. There is the 1 in a million chance that one of them might randomly jump 'off', but the average wins. Most stay put. As features get smaller, Heisenbergs uncertainty principle reaches out and bites certainty in the ass. So 'nearly impossible' becomes 'statistically probable' as feature size gets smaller. One in a billion becomes one in a thousand or one in a hundred (or one in ten). If it's the banks computer, my account, and a billion dollars in my favor, then: God Bless you Mr. Heisenberg!