Slashdot Mirror


Supercomputer Built With 8 GPUs

FnH writes "Researchers at the University of Antwerp in Belgium have created a new supercomputer with standard gaming hardware. The system uses four NVIDIA GeForce 9800 GX2 graphics cards, costs less than €4,000 to build, and delivers roughly the same performance as a supercomputer cluster consisting of hundreds of PCs. This new system is used by the ASTRA research group, part of the Vision Lab of the University of Antwerp, to develop new computational methods for tomography. The guys explain the eight NVIDIA GPUs deliver the same performance for their work as more than 300 Intel Core 2 Duo 2.4GHz processors. On a normal desktop PC their tomography tasks would take several weeks but on this NVIDIA-based supercomputer it only takes a couple of hours. The NVIDIA graphics cards do the job very efficiently and consume a lot less power than a supercomputer cluster."

31 of 232 comments (clear)

  1. Re:By what benchmark? by Anonymous Coward · · Score: 5, Informative

    By what benchmark is eight of the NVIDIA GPUs in the 9800 GX2 more powerful than 300 2.4 GHz C2Ds? Looking at TFS the benchmark of their own tomography code taking a couple of hours instead of weeks.
  2. Re-birth of Amiga? by Yvan256 · · Score: 4, Interesting

    Am I the only one seeing those alternative uses of GPUs as some kind of re-birth of the Amiga design?

    1. Re:Re-birth of Amiga? by Quarters · · Score: 5, Informative
      The Amiga design was, essentially, dedicated chips for dedicated tasks. The CPU was a Motorola 68XXX chip. Agnus handled RAM access requests from the CPU and the other custom chips. Denise handled video operations. Paula handled audio. This cpu + coprocessor setup is roughly analogous to a modern X86 PC with a CPU, northbridge chip, GPU, and dedicated audio chip. At the time the Amiga's design was revolutionary because PCs and Macs were using a single CPU to handle all operations. Both Macs and PCs have come a long way since then. 'Modern' PCs have had the "Amiga design" since about the time the AGP bus became prevalent.

      nVidia's CUDA framework for performing general purpose operations on a GPU is something totally different. I don't think the Amiga custom chips could be repurposed in such a fashion.

  3. Re:By what benchmark? by cromar · · Score: 4, Insightful

    I am guessing it has something to do with floating point calculations vs. integer calculations, but if I read the article, this wouldn't be Slashdot, would it? Think about it. We have GPUs to perform vector maths, flops, etc. because the CPU is not all that great at that sort of thing typically. A general purpose CPU is not necessarily going to be the fastest if your problem domain is more suited to an "inferior" chip; general purpose CPUs are not designed to be the fastest chip in every situation.

  4. Re:By what benchmark? by symbolset · · Score: 4, Insightful

    By what benchmark is eight of the NVIDIA GPUs in the 9800 GX2 more powerful than 300 2.4 GHz C2Ds?

    By the benchmark that they solve the particular problem of this specific application in 1/300th of the time?

    --
    Help stamp out iliturcy.
  5. This is awesome! by sticks_us · · Score: 4, Funny

    Ok, probably a paid NVIDIA ad placement, but check TFA anyway (and even if you don't read, you gotta love the case). It looks like heat generation is one of the biggest problems--sweet.

    I like this too:

    The medical researchers ran some benchmarks and found that in some cases their 4000EUR desktop superPC outperforms CalcUA, a 256-node supercomputer with dual AMD Opteron 250 2.4GHz chips that cost the University of Antwerp 3.5 million euro in March 2005...

    ...and at 4000EUR, that comes to what (rolls dice, consults sundial) about $20000 American?

    --
    "Beware of bugs in the above code; I have only proved it correct, not tried it." -- Donald Knuth
  6. Tomography by ProfessionalCookie · · Score: 4, Informative
    noun a technique for displaying a representation of a cross section through a human body or other solid object using X-rays or ultrasound.


    In other news Graphics cards are good at . . . graphics.

    1. Re:Tomography by jergh · · Score: 5, Insightful

      What they are is doing is reconstruction, basically analyzing the raw data data from a tomographic scanner and generating a representation which can then be visualized. So its more doing numerical methods than graphics.

      And BTW even rendering the reconstructed results is not that simple, as current graphics card are optimized for geometry, not volumetric data.

  7. Re:By what benchmark? by 77Punker · · Score: 4, Informative

    By what benchmark is eight of the NVIDIA GPUs in the 9800 GX2 more powerful than 300 2.4 GHz C2Ds? By any SIMD problem. For reference, fire up a game that's capable of using a software renderer and do some sort of benchmark, then use the 3D hardware on the same benchmark. That's the difference between SIMD on hardware that is designed to do SIMD and SIMD on hardware that's designed to do everything (or in the case of the Duo, multitasking).
  8. Re:Why haven't they started releasing GPU CPUs yet by kcbanner · · Score: 4, Insightful

    They are useful for applications that can be massively parallelized. Your average program can't break off into 128 threads, that takes a little bit of extra skill on the coder's part. If, for example, someone could port gcc to run on the GPU, think of how happy those Gentoo folks would be :) (make -j128)!

    --
    Obligatory blog plug: http://www.caseybanner.ca/
  9. Re:By what benchmark? by hansraj · · Score: 5, Informative

    As far as my understanding goes, comparing a GPU's performance to a CPU's performance is very very task dependent and the comparison with 300 CPUs should not be taken to mean that a 8GPU system is more powerful than a 300 core duo system in general.

    If the application requires solving a small task many times over and over and all of these tasks can be done in parallel then using a GPU works great because a GPU has many cores each of which can handle a simple routine. Also the GPU is designed to spend very little time on the way code is hadled (load, switch etc) and spend more time actually running the code (hence the requirement of only very simple functions).

    Such problems frequently arise in tomography, physics, astronomy etc and I hear GPUs are a great success in these areas. But don't hold your breath for running your favorite distro blazingly fast using GPUs.

  10. In other news... by bobdotorg · · Score: 4, Funny

    ... 3D Realms announced this as the minimum platform requirements to run Duke Nuke'em Forever.

    --
    __ Someday, but not this morning, I'll finally learn to use the preview button.
  11. Finally... by ferrellcat · · Score: 5, Funny

    Something that can play Crysis!

    1. Re:Finally... by Yvan256 · · Score: 4, Funny

      If you call 8 FPS "playing".

  12. Re:Why haven't they started releasing GPU CPUs yet by 77Punker · · Score: 4, Informative

    It is possible to solve non-graphics problems on graphics cards nowadays, but the hardware is still very specialized. You don't want the GPU to run your OS or your web browser or any of that; when a SIMD (single instruction, multiple data) problem arises, a decent computer scientist should recognize it and use the tools he has available.
    Also, this stuff isn't as mature as normal C programming, so issues that don't always exist in software that's distributed to the general public will crop up because not everyone's video card will support everything that's going on in the program.

  13. Re:By what benchmark? by 77Punker · · Score: 4, Informative

    The GPU's are better at floating point than integer; if I remember correctly it takes 4 cycles on current GPU's to do a float operation, but it takes 16 to do an int. No, I don't understand why.

    Also, the "multiply" and "add" instructions exist in a "madd" opcode which essentially doubles the theoretical floating point performance, even if you don't use "madd" very often.

  14. Brick of GPUs by Rufus211 · · Score: 4, Interesting

    I love this picture: http://fastra.ua.ac.be/en/images.html

    Between the massive brick of GPUs and the massive CPU heatsink/fan, you can't see the mobo at all.

  15. Wave of the Future? Yes by bockelboy · · Score: 5, Informative

    Wave of the Future? Yes*. Revolution in computing? Not quite.

    The GPGPU scheme is, after all, a re-invention of the vector processing of old. Vector processors died out, however, because there were too few users to support. Now that there's a commercially viable reason to make these processors (PS3 and video games), they are interesting again.

    The researchers took a specialized piece of hardware, rewrote their code for it, and found it was faster than their original code on generic hardware. The problems here are that you have to rewrite your code (High Energy Physics codebases are about a GB, compiled... other sciences are similar) and you have to have a problem which will run well on this scheme. Have a discrete problem? Too bad. Have a gigantic, tightly coupled problem which requires lots of inter-GPU communication? Too bad.

    Have a tomography problem which requires only 1GB of RAM? Here you go...

    The standard supercomputer isn't going away for a long, long time. Now, as before, a one-size-fits-all approach is silly. You'll start to see sites complement their clusters and large-SMP machines with GPU power as scientists start to understand and take advantage of them. Just remember, there are 10-20 years of legacy code which will need to be ported... it's going to be a slow process.

  16. Re:Wave of the Future? Yes by 77Punker · · Score: 4, Informative

    Fortunately, Nvidia provides a CUDA version of the basic linear algebra subprograms, so even if your software is hard to port, you can speed it up considerably if it does some big matrix operations, which can easily take a long time on a CPU.

  17. Re:By what benchmark? by Jaime2 · · Score: 4, Insightful

    I think the GP (and myself) were objecting to the use of the fairly general word "power" and the use of this one problem as a "power benchmark". While it is obviously true that 8GPUs is as fast as 300 C2Ds for this problem, this system isn't as fast as a supercomputer for most problems. All this does is point out that the recent trend of building supercomputers out of inexpensive general purpose CPUs may not be a good idea for all applications.

  18. Re:The idea is to use the CPU as the CPU by dreamchaser · · Score: 4, Insightful

    Because for 95%+ of the problems a general purpose computer tackles GPU's would suck. It's only in very special cases that GPU's outperform CPU's. Thus, your idea is a poor one.

  19. Re:By what benchmark? by pablomme · · Score: 4, Insightful

    As far as I know, GPUs are amazingly fast at matrix operations and other things allowing vectorized evaluation. I guess these tomography applications must make massive use of these. After all, tomography is in essence image processing..

    --
    The state you are in while your HEAD is detached... - wait, what?
  20. Re:By what benchmark? by symbolset · · Score: 5, Insightful

    All this does is point out that the recent trend of building supercomputers out of inexpensive general purpose CPUs may not be a good idea for all applications.

    And... a screwdriver is not always a prybar. A tool's a tool - they have preferred usage but if your requirement is specific and you're creative enough, you can do some fine work outside of the tool's intended purpose. Like this guy. Kudos to him.

    Perhaps some more creative people finding this information will now discover if their specific requirements can be met by this interesting configuration. That will save them large quantities of cash or possibly enable some facility that was not previously available because supercomputers cost a grip-o-cash.

    Of course for general purpose supercomputing you would want to use modified PS3s.

    --
    Help stamp out iliturcy.
  21. Re:By what benchmark? by Calinous · · Score: 4, Informative

    Because floating point operation goes on a dedicated path, while the integer operations does not have a dedicated integer-only path.
    Also, it's possible that loading floating points operands and storing results in actual code can be pipelined, while integer operations are not pipelined.
      (and yes, I don't know what I'm talking about)

  22. Re:Limited Application by Calinous · · Score: 4, Informative

    Even more: if you don't optimize the code specifically for the GPU-based supercomputer, your performance goes down the drain. I wouldn't be surprised if they obtained a speedup of an order of magnitude or more from the aggressive code optimisation.
          The idea is: the original code would run faster on a 8 Core2Duo machine than on the 8 GPUs. Even more optimising of the code will do little for the Core2Duos, due to limited memory bandwidth, FSB bandwidth, and so on.
          Meanwhile, optimising a pipelining sistem (load, compute, store) in the GPU would be greatly improved by huge bandwidth (50GB/s on current systems), huge number of computation units (128 or more) and so on.

  23. Re:By what benchmark? by cheier · · Score: 5, Interesting

    Too bad this isn't really news. I guess it is news if you consider that someone else has had their application accelerated by NVIDIA GPUs. I guess the only other reason that this could be news is by virtue of having 8 GPU cores.

    Unfortunately, this setup won't work ideally for a lot of other CUDA based applications. For the past 6 months, I had a system with 6 GPUs (actual physical GPUs). This is the system that I showed at CES. We are easily able to do 8 physical GPUs, and now I've been solely focused on utilizing Tesla.

    Given that NVIDIA released the GX2 series, I was not surprised that someone would announce an 8GPU system. I'm surprised it took this long for someone to do it, and almost equally surprised that slashdot took this long to publish any news that is decent in the realm of GPU super computing. I've been cranking out close to 228 billion atom evals. per second in VMD for months now, versus about 4 billion on dual quad core 3.0GHz Xeons.

  24. Re:Get the performance where it's most needed by kipman725 · · Score: 5, Funny

    You don't need a super-duper CPU for text editing

    clearly you have never used EMACS ;)
  25. Re:By what benchmark? by AlecC · · Score: 4, Informative

    It takes 4 cycles to do a floating point operation, and 4 cycles to do an integer add/subtract. It takes 16 cycles to do an integer multiply because it only has a 24-bit hardware multiplier (needed to achieve the 4-cycle flops, so it has to do long multiplies as four madds, This was for the first generation CUDA CPUs; the second generation, which should be out by now, was going to have double length floating and would be able to do 32 bit multiplies in the same four cycles.

    While they can do integer, these machines are not very happy with it, and I found it much easier to do everything in floating point, even if you are talking about 8-bit colour data. It goes no slower, and everything is much better adapted to floating point. Then there are special instructions to get back to integer at the output.

    While each operation takes 4 cycles, they are fully pipelined, so that it launched a new instruction per cycle, times 32 pipes per unit, times 8 units per GPU.

    And madd is very useful for the sort of tasks for which supercomputers are traditionally used.

    --
    Consciousness is an illusion caused by an excess of self consciousness.
  26. Re:Limited Application by tdelaney · · Score: 5, Insightful

    Sure - but at 4000 euros, you can afford to do a one-off purchase and write custom software for a limited application. The point of this is that if your application suits it, this is a very cheap way to get supercomputer performance without paying for your own supercomputer (cluster) or time on an existing one.

  27. Define: which is better? by mcrbids · · Score: 4, Informative

    Which is faster? A Lamborghini or a 5-ton flatbed truck?

    Depends on what you're after! If you are trying to get yourself from point A to point B, the Lamborghini is the obvious choice. But if you need to move 4.5 tons of stuff from point A to point B, the Lamborghini would suck ass when compared to the flatbed truck.

    It's just a question of what you are trying to accomplish. There is no absolute framework for "power" to solve problems, even if you define it fairly narrowly. For example, let's talk about 'pattern matching': A free database (like PostgreSQL) on cheap hardware can search through millions of records to deliver a query result in a tenth of a second. In that respect, Postgres is WAY faster than, say, the human brain. But the human brain will KICK ASS over just about any other technology out there in deciding whether or not a particular image contains a cat.

    Use the right tool for the job, and you'll be amazed at the results. That 8 GPUs handily outperform 512 CPU cores at a specific task is not surprising - the GPUs are designed from the beginning to solve the kind of problem that's needed!

    Personally, I'm surprised as to why there hasn't been more development behind the FPGA: are they just expensive?

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
  28. Re:Get the performance where it's most needed by Dolda2000 · · Score: 4, Funny
    "clearly you have never used Eclipse ;)"

    There, I corrected that for you.