Slashdot Mirror


'Pruned' Microchips Twice As Fast and Efficient

Zothecula writes "If you had to use a commuting bicycle in a race, you would probably set about removing the kickstand, fenders, racks and lights to make the thing as fast and efficient as possible. When engineers at Houston's Rice University are developing small, fast, energy-efficient chips for use in devices like hearing aids, it turns out they do pretty much the same thing. The removal of portions of circuits that aren't essential to the task at hand is known as 'probabilistic pruning,' and it results in chips that are twice as fast, use half the power, and are half the size of conventional chips."

25 of 127 comments (clear)

  1. Hm by mewshi_nya · · Score: 4, Insightful

    It's news that removing unnecessary parts of a circuit make it more efficient? Really?

    1. Re:Hm by Shikaku · · Score: 5, Insightful

      I think the news is they developed a heuristic of least used parts of a chip, slapped on a tiny emulator so functions don't fail, and call it a day.

      For example, Chip $foo has functions A B C D E & F. E is used on average once every gigaflop, so using the CPU/other functions, they implement E and cut out all parts for E.

    2. Re:Hm by Anonymous Coward · · Score: 3, Informative

      I suppose everyone in the world is not already as intelligent and knowledgeable as you and might possibly find this interesting. Perhaps you could find it in your heart to allow the less intelligent and knowledgeable the opportunity to discover something like this so that then they will be as intelligent and knowledgeable as you. :-)

    3. Re:Hm by mikael · · Score: 3, Interesting

      They aren't cutting out entire blocks of ASIC circuitry in a Boolean keep or remove decision. They are sacrificing precision by reducing transistor count, and doing so in a somewhat heuristic approach in order to limit the loss of precision. Their algorithm will explore the worst case and best case of each arithmetic operation in order to achieve this. Not too different from the MiniMax approach to playing Chess or other board games.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    4. Re:Hm by mewshi_nya · · Score: 3, Informative

      I actually know next to nothing about electronic circuits. I think the most complex thing I ever built was a metronome with variable tempo.

      I would expect that almost everyone here would know this kind of stuff already...

    5. Re:Hm by Chelloveck · · Score: 5, Funny

      For example, Chip $foo has functions A B C D E & F. E is used on average once every gigaflop, so using the CPU/other functions, they implement E and cut out all parts for E.

      The best part is that this can be applied iteratively. Once E is eliminated there's a new "least used" function which can be eliminated. By extension, any CPU can ultimately be pruned down to a single NOP instruction, with the entire rest of the instruction set emulated in software.

      --
      Chelloveck
      I give up on debugging. From now on, SIGSEGV is a feature.
    6. Re:Hm by Anonymous Coward · · Score: 3, Funny

      "By extension, any CPU can ultimately be pruned down to a single NOP instruction, with the entire rest of the instruction set emulated in software."

      Replace the CPU with a solar cell.

      Not only can it perform NOPs at the same rate as any pruned CPU, but it also runs at a negative current draw when you open the lid (or if you have enough illuminated 'bling' fans installed).

    7. Re:Hm by ZankerH · · Score: 5, Interesting

      Already been done, it's called one instruction set computing, and it makes brainfuck look like python in comparison.

    8. Re:Hm by Nutria · · Score: 2

      Hell, engineers have been doing that for at least 50 years. Big names are IBM with the S/360, DEC with the PDP-11 and VAX and Intel with the 8086

      It was the only way they could make CISC w/o chips the size of Andre The Giant's thumb. Micro-ops made them obsolete in X86 CPUs in the late 1990s.

      --
      "I don't know, therefore Aliens" Wafflebox1
    9. Re:Hm by Mr+Z · · Score: 2

      I found the article maddeningly vague, while that 8% number they threw out there strangely precise. Do you have a link to anything that says more specifically what they're doing? Your description sounds roughly like I was expecting (ie. sizing adders and multipliers to the actual needs of the problem rather than throwing standard sizes at them unthinkingly), but the article sorta treated transistors and logic as "magic" and their technique as "advanced magic". *eyeroll*

  2. Training wheels by Anonymous Coward · · Score: 2, Funny

    I'll be removing the training wheels off my Harley this afternoon... thanks to this article I can be badass and efficient

    1. Re:Training wheels by fluffy99 · · Score: 2

      I'll be removing the training wheels off my Harley this afternoon... thanks to this article I can be badass and efficient

      Harley and efficient are two words that just don't go together. Bad and Harley might, but badass and Harley certainly don't either. Harleys only seem to appeal to mid-life wannabe posers that can afford them and like riding loud, leaking, unreliable motorcycles. The smart riders buy Japanese for the reliability and don't worry about trying to impress (but actually annoy) their neighbors with a sputtering Harley.

  3. Now my computer won't start up! by ClaraBow · · Score: 4, Funny

    I was trying to make it more efficient by getting rid of some of the unused cores, so I got a pair of scissors and pruned off a couple of those cores. I put the pruned, aero dynamic chip back in my machine and now it won't start up! On the plus side, the power savings are noticeable :)

  4. Slashdot cynics are right again by russotto · · Score: 5, Insightful

    Someone's going to chime in and say that the naysayers are oversimplifying or denigrating this because they didn't think of it, but I think the quote below says enough.

    "I believe this is the first time someone has taken an integrated circuit and said, 'Let's get rid of the part that we don't need,'" said principal investigator Krishna Palem, a Professor of Computing at Rice.

    Uh, no, Professor, I don't believe it is.

    1. Re:Slashdot cynics are right again by hedwards · · Score: 2

      That was my thought, that sort of thinking led Cyrix and AMD to lose serious ground to Intel when they failed to recognize the implications of the FPU to gaming. They were already behind, but this was a pretty significant loss for them.

      Plus, wasn't this one of the ideas behind RISC?

    2. Re:Slashdot cynics are right again by mr_mischief · · Score: 2

      The big idea behind RISC was to design simpler processors in the first place so you could ramp up the clock rates. This is taking an existing chip and getting rid of portions of it. They're in the same ballpark, but not quite the same thing. Modern x86 chips were designed to be RISC with a CISC-to-RISC instruction decoder place in front, so it's kind of like that.

  5. That's fine ... by PPH · · Score: 4, Interesting

    ... for a specific application, like a hearing aid. Not so good for microprocessors intended for general purpose use (broad markets).

    If you have sufficient market volume, you can afford to produce some sort of 'application specific integrate circuit'. Hmm, an ASIC. Now there's a novel idea (putting on jacket to make a dash to the patent office).

    --
    Have gnu, will travel.
  6. Madman Muntz famous(and rich)for this last century by shoppa · · Score: 5, Interesting
    Removing unnecessary parts from a circuit until it stops working, is now something "new"?

    From Wikipedia entry on Madman Muntz:

    Muntz played the madman in his unorthodox television commercials, but in fact he was a shrewd businessman and a self-taught electrical engineer. By trial and error, taking apart and studying Philco, RCA, and DuMont televisions, he figured out how to reduce the devices' electrical components to their minimum functional number. This practice became known as "Muntzing".
    He often carried a pair of wire clippers, and when he thought that one of his employees was "over-engineering" a circuit, he would begin snipping components out until the picture or sound stopped working. At that point, he would tell the engineer "Well, I guess you have to put that last part back in" and walk away.

  7. erm by DaveGod · · Score: 5, Insightful

    "I believe this is the first time someone has taken an integrated circuit and said, 'Let's get rid of the part that we don't need,'"

    I believe this to be a basic part of design.

  8. Re:Madman Muntz famous(and rich)for this last cent by vadim_t · · Score: 3, Insightful

    Yeah, I'm not that crazy about that idea.

    From what I gather the components being removed are most likely resistors and capacitors. And sure, some can be probably removed, if you don't mind ending up with a noisy power supply and too much current going to various parts.

    So you're left with a device that kind of works, but that may mysteriously stop working in a few months.

  9. Re:Madman Muntz famous(and rich)for this last cent by Mikkeles · · Score: 2

    He was probably responsible for those TVs I had when I was young which would lose sync when conditions weren't perfect, as in: either the Sun or the Moon were up.

    --
    Great minds think alike; fools seldom differ.
  10. RISC was wrong by cjonslashdot · · Score: 2

    Yes, you are right. This is the spirit of RISC.

    But RISC was wrong. RISC resulted from a study of what instruction were actually used by typical applications that were compiled with standard compilers. This is like studying what railroad tracks are used and concluding that rail travel would be optimum if certain tracks were eliminated and others improved. This conclusion is wrong, because it assumes that existing rails include all optimal paths. In actuality, there might be paths that do not currently have rails.

    Thus, the conclusion that a CPU should have fewer instructions is specious. A more accurate conclusion would have been that a CPU should have an optimum set of instructions for its intended task.

    For example, consider the fact that linked lists are heavily used by most C programs. Yet, the C language does not have a linked list primitive: one has to use a library. Therefore, if a CPU had linked list operations built in (as the VAX did), a C compiler could not even use those operations because the language does not support it. Instead of concluding that the CPU's instruction should be fewer, one might conclude that the CPU should have linked list operations built in, and that linked list operations should be added to C. The result might be much faster programs.

    My point is that RISC exposed the issue of the matching of CPU instruction to software, but the conclusion that CPUs should be simpler was wrong. The right conclusion would have been that CPUs should have optimal instructions, which might mean removing some and adding others - not merely removing some.

    1. Re:RISC was wrong by deapbluesea · · Score: 2

      RISC resulted from a study of what instruction were actually used by typical applications that were compiled with standard compilers.

      Reduced instruction set computing, or RISC (pronounced /rsk/), is a CPU design strategy based on the insight that simplified (as opposed to complex) instructions can provide higher performance if this simplicity enables much faster execution of each instruction.http://en.wikipedia.org/wiki/Reduced_instruction_set_computing

      The point of RISC wasn't to reduce the instruction set to those most commonly used, although the concept of "make the common case fast" resulted in some of that. The main goal was to reduce the complexity of what each instruction does so that any instruction will execute in the same number of clock cycles as any other instruction. By enforcing instruction execution time, this opened up the ability to pipeline instructions easily. In fact, this model was used in the Pentium Pro. and Pentium Core architectures which use instruction decoders to "rewrite" CISC instructions into micro-ops that are pretty analogous to RISC operations. The micro-ops allow the processor to take advantage of things like out of order execution, speculative execution, and parallelization. If the processor stuck to a purely CISC instruction set, this wouldn't work as each instruction has a different execution time and pipelining would become extremely complex.

      The right conclusion would have been that CPUs should have optimal instructions, which might mean removing some and adding others - not merely removing some.

      I suppose you reached the right conclusion, but for the wrong reason. RISC simply wasn't about "matching of CPU instruction to software". It was about making instructions simple and easy to implement. This concept is alive and well in every modern day processor. I don't think your version of RISC development comports well with the actual history of the development of MIPS and other RISC architectures.

      --
      Government is not reason; it is not eloquent; it is force. Like fire, it is a dangerous servant and a fearful master.
  11. Madman Muntz went bankrupt by mangu · · Score: 3, Informative

    What you didn't mention is that "Muntz admitted his business lost $1,457,000 from April to August 1953,[28] and although he tried to reorganize, Muntz TV filed bankruptcy and went out of business in 1959" (from the same Wikipedia article)

    You see, engineers don't sprinkle components at random. Every component in an electronic circuit is there for a reason. If something can be removed, what you have is a defective specification, maybe your circuit is designed to perform a function that's not often used, maybe it's designed to function in a situation that never happens. In that case you can ask the engineer to redesign for looser specifications.

    Removing components at random is just stupid.

    1. Re:Madman Muntz went bankrupt by ChrisMaple · · Score: 2

      Muntz's designs were for areas with strong signals, so he put in fewer gain stages than competitors. Where competitors put in adjustments so that a set could be retuned to account for aging, Muntz did not. His sets were good for a few months or maybe years, but when components drifted due to age, the components had to be replaced or the circuits trimmed by adding parallel or serial devices to compensate for the drift.

      In tube or discrete transistor circuits, it's good design practice to use resistive cathode (emitter) degeneration paralleled by a capacitor to provide a stable DC operating point with maximum AC gain. But if you carefully set the operating point, you can cut out the 2 components and save money. But when the components age (tube) or temperature changes (transistors), the operating point will shift enough that the circuit will operate improperly or self-destruct.

      "Engineers don't sprinkle components at random" -- well, really poor engineers may. More to the point, some engineers are too conservative, designing in components that are higher power or more accurate than needed. Some are too lazy to figure out if fewer or less expensive components can do the job. Some will add components to make new features available that aren't needed. Some will add components under pressure from the marketing department.

      There's a famous example of an architect (Christopher Wren, IIRC) whose clients insisted that he needed more columns to support a ceiling. He argued, but they insisted. So he put in the columns, with a tiny space at the top, so that they never touched the ceiling.

      --
      Contribute to civilization: ari.aynrand.org/donate