Slashdot Mirror


Supercomputer On-a-Chip Prototype Unveiled

An anonymous reader writes "Researchers at University of Maryland have developed a prototype of what may be the next generation of personal computers. The new technology is based on parallel processing on a single chip and is 'capable of computing speeds up to 100 times faster than current desktops.' The prototype 'uses rich algorithmic theory to address the practical problem of building an easy-to-program multicore computer.' Readers can win $500 in cash and write their names in the history of computer science by naming the new technology."

14 of 214 comments (clear)

  1. Name ? by Hsensei · · Score: 2, Insightful

    What's wrong with Supercomputer On-a-Chip (c) ?

    --
    ~
  2. "Cell" by Doc+Ruby · · Score: 3, Insightful

    I call the "supercomputer on a chip" the "Cell microprocessor". Of course, next year, it won't be so super. But there will be a new one that's really super.

    --

    --
    make install -not war

    1. Re:"Cell" by Doc+Ruby · · Score: 2, Insightful

      How is that "fair"? By the time this new chip is even properly named, TBM will have Cell chips in 45nm silicon. Partly because their engine is simpler. And the Cell is designed for scalable multicore/chip parallelism. Its main magic is its coherent, superfast "elements" bus, which retains coherency even at 1.6Tbps across multiple cores and chips. IBM has 4-core chips in pairs already deployed in public, and 128-core chips in the lab, where a massive new top-predator supercomputer is being built on the new architecture.

      There are other, more parallel processors. The PS3's Cell at 204GFLOPS is matched to a 128-shader RSX at 1.8TFLOPS. But you can't run Linux, or anything else so general purpose, on an RSX - not without a prohibitively difficult development process, if at all retaining the speed.

      The Cell has builtin allocation facilities, so app code doesn't have to schedule or otherwise closely manage the fast SPEs, just send tasks to a generic pool. Which SPEs just DMA into a unified memory model. That kind of simplicity makes Cell programming harder than, say, PowerPC programming, but much easier than other parallel programming, without losing its speed. Once there are some basic libraries for programming "common" new parallel tasks on the Cell, it won't be considered any harder than it was to program x86 "Protected Mode", Extended vs Expanded Memory, word alignment, etc.

      --

      --
      make install -not war

  3. WTF? by msauve · · Score: 4, Insightful

    We have microcomputers and supercomputers and nothing in between? Seems to be a bit of hyperbole involved here.

    --
    "National Security is the chief cause of national insecurity." - Celine's First Law
    1. Re:WTF? by Kadin2048 · · Score: 5, Insightful

      but what is even the high-end gamer going to need a chip 100 times faster than today's machines for any time in the next decade?

      If you compare megahertz-cores (number of megahertz times number of cores at that speed), I suspect that there's been almost a 100x increase in the past 10 years, at least if you look from the low end a decade ago to the high end of personal computers now.

      I don't see why the next ten years would be any different. Operating systems will continue to get more bloated, software packages will get more feature-stuffed, games will continue to demand just slightly more than whatever's available to most people with expenses and regular lives, and most people will buy a new machine every few years based on whatever's on sale for $500 at Best Buy when their old one gets clogged with spyware.

      Sure, 100x might be a bit of a stretch (I'm not sure whether silicon will go that much further and I'm not totally convinced that parallelism is the solution for general-purpose computing), but if that kind of power was available, it would be put to use.

      Software expands to fill the resources made available to it, and then some. Always has and always will.

      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    2. Re:WTF? by jacksonj04 · · Score: 2, Insightful

      Build it, and they will come.

      Remember getting your first 1gb drive and going "Wow, I'm *never* gonna be able to fill this up". A few years later people are throwing around files in excess of 1gb with no worries.

      --
      How many people can read hex if only you and dead people can read hex?
    3. Re:WTF? by eggnoglatte · · Score: 2, Insightful
      Once you have compute power, you'll find a way to use it. If you are a gamer, then this kind of performance gain will be used to roll the GPU back into the CPU, increase your screen resolution to 10-20 MPixels, increase the rendering quality, and improve the game AI.

      Once you are done with all that, you are going to be back asking for more.

  4. There's nothing here by IlliniECE · · Score: 2, Insightful

    I RTFA... It seems to handwave so much about parallel computing, that it seems they haven't discovered anything. All i see is "clock frequency can't increase, so we're going parallel'.... Surely, this can't be the extent of their research. The article claims its 'easy to program', but there are zero specifics about why that would be the case. Can anyone tell me what they've done here (if anything)?

    1. Re:There's nothing here by IlliniECE · · Score: 1, Insightful

      And people who write articles should learn to write them more thoroughly. If the article doesn't look promising, i'm not going to spider across the web collecting as much as I can on it.

  5. Overhyped by rivenmyst137 · · Score: 5, Insightful

    Oh, for god's sake. I don't understand why this is getting so much press. It was stupid when it went up on Digg, and it's stupid that it's showing up here. This isn't substantially different from any of the other parallel architecture and programming work that's been going on for the last two decades. Their benchmarks are against embarrassingly parallelizable algorithms like matrix multiplies and randomized quicksort, things that any half-intelligent lemur (with a math and cs class or two) could get to run quickly. The hard part is speeding up your average desktop application which, I guarantee you, is not spending the majority of its time doing matrix multiplies.

    On top of that, their "parallel extension of von Neumann" amounts to adding primitives to start and stop threads into the language. Again, any half-intelligent lemur (with a slightly different skill set from the first) could have done that. And I think a few actually have (at the risk of comparing language researchers to lemurs). It doesn't solve the underlying problem.

    Oh, and did we mention no floating point and the lack of any memory bandwidth to get data into and out of this thing?

    This is over-hyped research and shameless self-promotion, and for some weird reason the press seems to be buying it. Stop it.

  6. Re:Limited Practical Applications (for now) by p0tat03 · · Score: 4, Insightful

    While I agree there are certain leaps to be made before this can be a mass market item, I disagree fundamentally with point 1 that you make. You could have made the exact argument about the old DOS Lotus office suite way back, 15 years ago. Those things still word process, and a 386 33MHz is certainly no slouch - I never had to sat around waiting for the software to respond to me or finish some ridiculously long task.



    I'm sure you'd agree that these newfangled Pentiums and Core Duos are quite useful, even for the end user.



    Think about features like predictive and contextual actions. Desktop search? Search-as-you-type? There are many ways to improve the usability of computers thyat require more and more performance. Honestly, if we can invent faster computers, we will invent ways to put the power to use in a productive, tangible way.

  7. It's also retarded by Sycraft-fu · · Score: 2, Insightful

    Since of course that breaks down. Actually maybe it isn't so retarded since the same thing is true in many computing problems.

    For example if you take the cleaning situation sure, adding a second cleaner will nearly double the speed it gets cleaned at. Adding four will probably close to quadruple it. However, it starts to break down after a while. At first the gains just start slowing down, as there's more people they have to spend more time talking and dividing up who does what than actually working, as well as doing work others have done because of a miscommunication. Eventually you have so many people that you start actually slowing down with each person you add, because they are getting in each other's way and taking up too much time with non-work.

    That's fairly similar to what you get with a lot of problems in computation. You split the task in half, you can have 2 processors/cores/whatever execute it and nearly double your speed. However after a point you find that you can't split the task more, or that even if you can, it takes more time getting it all sync'd up than you gain from the multiple execution, or that contention in other parts of the system (like memory) holds things back.

    The concept of "two is better than one to 100 must be better than 10" doesn't hold up. There are almost always limits to how much you can divide up a task. Sometimes those limits are extremely high, but they are there. Unfortunately, for many tasks, the limits are pretty low.

  8. Worst Analogy Ever by FuzzyDaddy · · Score: 2, Insightful
    From TFA:

    Suppose you hire one person to clean your home, and it takes five hours, or 300 minutes, for the person to perform each task, one after the other," Vishkin said. "That's analogous to the current serial processing method. Now imagine that you have 100 cleaning people who can work on your home at the same time! That's the parallel processing method.

    100 people trying to clean my house at the same time would be slower than 1, because no one would be able to move or breathe. Which is exactly what makes parallel computing hard.

    --
    It's not wasting time, I'm educating myself.
  9. Re:Isn't the solution to reverse the concept? by booch · · Score: 2, Insightful

    Wow. You got half way with your idea, but didn't make it all the way.

    Right now, with most programming languages, we tell the computer how to compute the result. We generally do this with a linear list of steps for the computer to take. But that's not the only way to write a program. Another way is to tell the computer what we want it to compute, and let it figure out the best way how to do that. This sounds pretty crazy at first, but it's actually been done. Take a look at the Prolog and Haskell programming languages. They're much more descriptive than iterative. They can parallelize things a lot better than the languages we're used to using.

    --
    Software sucks. Open Source sucks less.