Slashdot Mirror


There's No Such Thing As a General-Purpose Processor

CowboyRobot writes: David Chisnall of the University of Cambridge argues that despite the current trend of categorizing processors and accelerators as "general purpose," there really is no such thing and believing in such a device is harmful.

"The problem of dark silicon (the portion of a chip that must be left unpowered) means that it is going to be increasingly viable to have lots of different cores on the same die, as long as most of them are not constantly powered. Efficient designs in such a world will require admitting that there is no one-size-fits-all processor design and that there is a large spectrum, with different trade-offs at different points."

13 of 181 comments (clear)

  1. There are different workloads, duh. by Anonymous Coward · · Score: 4, Insightful

    David Chisnall says : parallel is not the same as in series. World gasps.

  2. If it's fast enough, "general purpose" is fine by Anonymous Coward · · Score: 4, Insightful

    If a "general purpose" processor solves your problems fast enough, it's good enough.

    How the fuck is that "harmful"?

    Geez, you'd think TFA is just a blowhard looking for page hits.

    1. Re:If it's fast enough, "general purpose" is fine by Anonymous Coward · · Score: 3, Informative

      Because it is inefficient. In addition to higher energy bills, a less efficient architecture means shorter battery life in a mobile device, more noise in a desktop PC, and fewer servers per rack in a datacenter.

      There are "general purpose" microcontrollers that use microWatts of power. That can run on one tiny watch battery for years.

      For example, http://www.microchip.com/wwwpr...

      From datasheet,

        * 30 microAmps per Mhz
        * 20 nanoAmps in sleep

      So a 100mAh 3V watch battery would last 570 years on sleep mode and 3-5 months operating at 1MHz. Or at 31kHz, with some sleep it should operate for years on a button cell.

      And it's a fully programmable, general purpose microcontroller.

      So what's the problem? Too inefficient?

  3. Clickbait Caption, but Valid Arguments by gentryx · · Score: 3, Insightful

    Of course general purpose CPUs exist, simply because we call them that way. But it is also true that each design has it's own strengths, and "dark silicon" is another driver for special purpose hardware. Efficiency is another. Andrew Chien has published some interesting research on this subject. In his 10x10 approach he suggests to use 10 different types of domain-specific compute units (e.g. for n-body, graphics, tree-walking...), each of which is 10x more efficient than "general purpose CPUs" in its domain (YMMV). Those compute units bundled together, make up one core of the 10x10 design. Multiple cores can be connected via a NoC.

    Let's see how software will cope with this development...

    ps: can special purpose hardware exist if general purpose hardware doesn't?

    --
    Computer simulation made easy -- LibGeoDecomp
    1. Re:Clickbait Caption, but Valid Arguments by Thor+Ablestar · · Score: 3, Insightful

      Of course. But the very origins of microprocessor revolution are being forgotten:

      Intel was to make 10 specialized chips. Intel made ONE universal programmable chip i4004 that replaced them all and spent development money ONCE.

      It's possible to make 10 special-purpose chips but it will cost 10 times more.

  4. 1 Calorie per day = 48.4 mW by tepples · · Score: 5, Informative

    100 watts corresponds to 2000 Calories per day

    Also, watt represents momentary consumption and calories are a fixed mass of energy

    Calories and calories per day are not the same unit. A calorie is 4.18 kJ, and a calorie per day is 4.18 kJ / 86.4 ks = 48.4 mW. Multiply this by 2000 and you'll end up very close to 100 W.

  5. General purpose: Efficiency not required by davidwr · · Score: 5, Insightful

    From TFA:

    It's therefore not enough for a processor to be Turing complete in order to be classified as general purpose; it must be able to run all programs efficiently. [emphasis added]

    Um, nope.

    A general-purpose anything is rarely as efficient at a given task as a special-purpose version of the same thing. Sometimes you really do want your computer chip to be a "Jack of all trades, master of none."

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  6. It's not all that many years ago by msobkow · · Score: 4, Insightful

    It isn't all that many years ago that the floating point was handled by either software emulation or a co-processor. Now we're using GPUs as co-processors. There are also audio designs that act as co-processors. Several enterprise systems have encryption co-processors. IBM is notorious for putting specialized processors in their mainframes. Several chips have the GPUs embedded on-chip already.

    I'd argue that putting specialized chips on-die doesn't affect the general-purpose nature of the compute core that controls those resources at all. The whole article is red herring trying to establish a distinction between on-chip and off-chip processing that has to do more with the scalability of silicon manufacturing techniques than it does any distinguishing feature of the designs.

    Let's face it -- if you want to really accelerate a task, you design silicon specifically for that task and interface it to a general purpose core. The article discusses nothing new in the world of computing.

    --
    I do not fail; I succeed at finding out what does not work.
  7. Re:Efficiency by TechyImmigrant · · Score: 4, Funny

    A whole woman consumes 100 watts.

    D'oh! Human, not woman.

    I got myself an nvidia woman. She takes 400 watts.

    --
    I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  8. Re:Hyperbolic headlines strike again by TheRaven64 · · Score: 3, Informative

    I'm the author of TFA. There's a big difference between a general purpose processor and a general purpose computer. A lot of current research in computer architecture is focussed on the idea that you have a sharp divide between accelerators and general purpose CPUs. The point of the article is that different CPU microarchitectures are specialised for different workloads (one of the cited results was that in a big.LITTLE arrangement, the A7 core runs one of the SPEC benchmarks faster than the A15 because of its lower cache access time, for example) and that there are a lot of assumptions about the kind of code that the general purpose core will run. Many of these are true for C code, but a lot less true for code written in other languages. The communication patterns that mainstream multicore processors are optimised for are heavily tied to C, to the extent that if you have a language with a shared-nothing abstraction and message passing then the only way of implementing it is horrendously inefficient at the hardware level.

    --
    I am TheRaven on Soylent News
  9. Re:Hyperbolic headlines strike again by smallfries · · Score: 4, Insightful

    A lot of the value in your article is lost by trying to shoehorn "general purpose processors" into an argument about task-optimisation. The difference between properties relating to computational power and those relating to performance is really basic textbook stuff that we teach to undergraduates. Being able to run any program, and being able to run any program efficiently, is a difference taught in undergraduate architecture courses.

    The parts of your article that are interesting and valuable would have been better served by a narrative that does not rely on a straw man. Cleanly separating the issue of power / performance and explaining that task-neutral optimisation is impossible would have been a better article, and one that would have been easier to write. There is a natural analogy with representation-bias in machine learning that would have provided more explanatory power without the unnecessary rhetoric. I know its the queue, but even so I am a little disappointed in your reviewers.

    --
    Slashdot: where don knuth is an idiot because he cant grasp the awesome power of php
  10. Re:Efficiency by Anonymous Coward · · Score: 5, Funny

    Sounds like a hottie

  11. Re:Efficiency by Anonymous Coward · · Score: 3, Funny

    Unfortunately she requires two inputs. :(