Slashdot Mirror


Self-wiring Supercomputer

redcone writes "New Scientist is reporting on an experimental supercomputer made from Field Programmable Gate Arrays (FPGA) that can reconfigure itself to tackle different software problems. It is being built by researchers in Scotland. The Edinburgh system will be up to 100 times more energy efficient than a conventional supercomputer of equivalent computing power. The 64-node FPGA machine will also need only as much space as four conventional PCs, while a normal 1 teraflop supercomputer would fill a room. Disclaimer: At this point in time, the software needed to run it, which is the key to the project, is vaporware. "

11 of 256 comments (clear)

  1. Not new, but a promising avenue by AKAImBatman · · Score: 5, Insightful

    FWIW, this is not a new idea. FPGAs (i.e. dynamically reconfigurable processors) have been around for about 20 years now, and have allowed hardware developers to produce custom hardware in many situations. The key, you see, is that hardware designed for a specific task is almost always going to perform that task better than a general purpose processor. That's why the SaarCore can outperform a P4, and why your computer has a custom built GPU.

    As a result, the idea of runtime-dynamic hardware sounds great. Unfortunately, the issue that developers run into in developing a runtime-dynamic processor is the matter of knowing how to configure the chip. One tack is to allow programs to load chip designs themselves, thus creating specific hardware for that individual program. The down side to this tack is that someone must go through the time consuming task of manually writing the chip in a Hardware Design Language such as VHDL or Verilog. Most programmers aren't going to do this when they can get the program out faster with a general purpose CPU.

    This has led to another tack of using software to analyze a program and automatically create a machine to optimize it. This is conceptually similar to the Java JIT method, but is more complex by far. A lot of research is being done into this area (as this story shows), but I wouldn't hold my breath for now.

    Another design that makes a lot of sense is the concept of "hardware on demand". i.e. Imagine if you had a library of accelerator chip designs. Whenever a program needs a particular form of common hardware acceleration (e.g. GPU, Sound, DSP, etc.), the onboard FPGAs could be reconfigured to meet the demand. This wouldn't have the same punch as task-specific hardware, but it would provide an inexpensive method for obtaining a bundle of hardware that would otherwise be extremely expensive and use up a lot of bus space.

    1. Re:Not new, but a promising avenue by suitepotato · · Score: 3, Insightful

      Actually, the original idea was either nature or G-d, whichever you'd rather believe in. Your own brain rewires itself over the course of its lifetime, tearing down and building new connections, the neurons actually physically moving their connections about slowly. So, as soon as we catch up with that ability, we'll have one massive new technique in our AI arsenal.

      Come to think of it, isn't the software on our brains vaporware until experience has written it?

      --
      If my grammar and spelling are off, I am [distracted/tired/careless] (take your pick)
    2. Re:Not new, but a promising avenue by pohl · · Score: 3, Insightful
      ...isn't the software on our brains vaporware until experience has written it?

      Dude, that's poetry.

      --

      The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...

    3. Re: Not new, but a promising avenue by Andy_R · · Score: 2, Insightful

      For mainstream use, you need an easy way to program it for general-purpose computing. The real problem here is software

      One nice way to use FPGAs is by using the compiler to do the optimisation. Write your software for a large general purpose CPU that could fit in the FPGA, then throw out all the bits of the processor that never get used by your program, and concentrate on the parts you do use.

      At it's bluntest, this leads to simple optimisations like dropping the FPU if there's no floating point, or only having the logic to do barrel shifts 2 bits left if that's the only barrel shift your program happens to need, but incorporate a bit of feedback (hey, we only do a multiply once in a blue moon, how about using successive addition and powers of 2 here?) and some odd things (need to refer to 7 different constants? Ok, we build a CPU with 7 opcodes that simply return those values!) and the resulting chip can really fly.

      This de-junking concept has great applications in portable devices, the power and cost savings in (for example) a mobile phone that has a CPU specially designed to run the embedded rom software only could be massive.

      --
      A pizza of radius z and thickness a has a volume of pi z z a
  2. Re:Important Question! by vmcto · · Score: 3, Insightful

    But will is be able to run Duke Nukem Forever?

    No. But a spelling / grammar checker might be doable.

  3. already on the market by mjsottile77 · · Score: 3, Insightful
    The Cray XD-1 (http://www.cray.com/products/xd1/index.html) has already been on the market with FPGA 'application accelerators'. This isn't really new news.

    Besides, FPGAs have two issues that make them good only for a very specific set of apps. Number 1, they don't currently have great floating point performance - this is a killer for most scientific apps. Number 2, they are hard to feed because the rate they can compute at versus the rate memory can feed them is quite skewed. Regardless, they're still very promising. The reconfigurable computing team at LANL (http://rcc.lanl.gov/) has done some very cool things with FPGA based systems.

  4. Brilliant strategy! by Pollux · · Score: 2, Insightful

    Here's an idea...I think I'll go into the car manufacturing business. I'll build myself a brand new car with an extremely efficient engine that gets 400 miles to the gallon. It's a small engine and a lightweight car, but can still transport a family of four!

    Disclaimer: At this point in time, the software needed to run it, which is the key to the project, is vaporware. "

    Except there's one little problem...the gas needed to run it, which is the key to making this engine so efficient, hasn't been invented yet. But as soon as it is, we'll take the market by storm!

  5. Re:Teraflop computer fills a room? by BurntNickel · · Score: 5, Insightful

    How does the playstation 3 manage 2.2 teraflops without being the size of a house then?

    Marketing.

    --
    And the knowledge that they fear is a weapon to be used against them...
  6. Yes, except by Colin+Smith · · Score: 3, Insightful

    It's a research project for Edinburgh University, not a commercial enterprise.

    --
    Deleted
  7. Sort of... by fireboy1919 · · Score: 2, Insightful

    What has been proven is that there are problems for which it is impossible to automatically write a program to solve. Further, this is an NP-hard problem, meaning that you can't even know for sure if you're ever going to get a solution, or how long it will take.

    However you can usually make a good estimate with approximate solutions of how close you are to the real solution, and how much longer it will take. Obviously this only works with programs that have some form of error evaluation criteria. This is what the field of AI is all about.
    There are also some programs that you would immediately be able to identify as solvable with a clear, direct solution, or unsolvable.

    --
    Mod me down and I will become more powerful than you can possibly imagine!
  8. Re:hypercomputer by Colin+Smith · · Score: 2, Insightful

    "No one has ever tried to build a big supercomputer with these chips before,"

    HTH

    --
    Deleted