Cray Introduces Adaptive Supercomputing 108
David Greene writes "HPCWire has a story about Cray's newly-introduced vision of Adaptive Supercomputing. The new system will combine multiple processor architectures to broaden applicability of HPC systems and reduce the complexity of HPC application development. Cray CTO Steve Scott says, 'The Cray motto is: adapt the system to the application - not the application to the system.'"
Good Motto (Score:5, Insightful)
Cray CTO Steve Scott says, 'The Cray motto is: adapt the system to the application - not the application to the system.'
That's a good motto, but how often do you bend the will of your application, needs or business to the limitations of the application? I've been sitting on something for a couple weeks after telling someone "You really should have accepted the information the other way, because this new way you want it is highly problematic (meaning: rather than rip it off with a simple SQL query, I'll have to do an app)"
IMHO adapting to the needs of the user == customisationg, which also == money. Maybe it's not a bad idea at that! :-)
In certain cases, at run-time, the system will determine the most appropriate processor for running a piece of code, and direct the execution accordingly.
This assumes, of course, that you have X number of processors to chose from. If you can't do it, the answer is still 'throw more money at it, buy more hardware.'
my head is still spinning from all the new buzzwords overheard at SD West 2006.
Re:Good Motto (Score:2, Insightful)
Re:Good Motto (Score:1)
Re:Good Motto (Score:2)
Co-processors anyone? (Score:4, Insightful)
Old ideas are new again.
Re:Co-processors anyone? (Score:5, Interesting)
In other words, they're working on processors which are programmed in general-purpose languages, but which adapt their hardware to the specific program.
Re:Good Motto (Score:2)
Except that in this case, one of the options they are promoting is FPGA - Field Programmable Gate Array - which can literally be adapted to the problem by reprogramming them. They are, in effect, an infinite number of processors to choose from.
Look to see FPGA's showing up as coprocessors on more prosaic AMD Opteron motherboards in the near future
Re:Good Motto (Score:2)
Re:Good Motto (Score:2, Interesting)
Re:Good Motto (Score:3, Informative)
Re:Good Motto (Score:1)
Re:Good Motto (Score:1)
Re:Good Motto (Score:2)
Re:Good Motto (Score:2, Interesting)
Re:Good Motto (Score:1)
Re:Good Motto (Score:2)
the problem i see is that place and route processing of a design is SLOW so you would have to be running a pretty long job for customisations to be worth it.
Re:Adaptive = Adapting for Survive (Score:4, Informative)
Re:Good Motto (Score:2)
Uh, sure. That would be the assumption. Just like back in the day you had math coprocessor for floating point operations, and now it's on the chip; or disk compression duties used to be handled by a Stacker board. Or today you have a graphics accelerator to handle 3D video.
Sounds like a sound business too. Instead of having completely different
Re:Good Motto (Score:5, Interesting)
For example, Gerald Sussman of MIT (a computer scientist) and a Jack Wisdom (a physicist) decided they wanted to do long-term modelling of the solar system's evolution over time. Long time modelling of a multi-body system requires a fantastic amount of calculation. What is the best way to do it?
Sussman and Wisdom came up with a crafty idea: build a computer that is specially configured at the hardware level to do the modelling. Sussman and his colleagues decided that with off-the-shelf parts they could build a computer that would be just as or more capable of modeling this system than a supercomputer would be. The result was the Digital Orrery, a relativlely cheap computer that gave great results. (It is now featured in the Smithsonian museum.)
Think of it: if your computer is going to be doing the Fast Fourier Transform 6.02x10^23 times per day, why not build a superfast chip that does nothing but the FFT rather than express it as software? It's a pretty cool idea. I think this is the sort of thing that Cray computers claims to want to do with its motto.
Fast computing with many processors (Score:2)
Avogadro's number. I get you.
Also 1000 TFlops is still much much less than 10^23, which means the universe is very complex compared to computing power.
Now, it is possible to set up the networking between processors to compute a specific calculation quickly. There is an architecture called systolic arrays that basically treats unrolls a loop into a long pipeline. If you arrange processors into a grid and you chain certain processors together depending on the job they each have to do,
Re:Good Motto (Score:2)
Wasn't it essentially that motto that once gave us the CISC architecture, which most people today agree was't such a great idea...?
Re:Good Motto (Score:2)
No. I admit I'm no expert, but this is my understanding of it. CISC has several very good reasons (at the time) behind it:
1) Keep the code footprint as small as possible, since memory (disk and RAM) was expensive.
2) Try to factor out the most common "overhead" instructions (i.e. load and store) which many thought were actually crowding out the important code.
3) Make compiler writing easier (but not necessarily easier to optimize fo
Re:Good Motto (Score:2)
However, the way I see it, points 3 and 4 (and possibly 2, depending on what you meant with "overhead") are basically attempts to do in hardware what can be done in software. Perhaps these were valid points at the time when memory was expensive, as you say, but at least in the long run didn't turn out to be very effective. Yet, we are still stuck with CISC processors because of x86 backward compatibility (although they internally
Re:Good Motto (Score:2)
That's a good motto
Yeah. But having spent a good part of my career sweating over scientific
codes line by line to make them "vectorize" on the Cray, I wonder.
Cray? (Score:3, Funny)
Re:Cray? (Score:1)
For instance, John F Kennedy [wikipedia.org].. I'm sure he had emotions [bergen.com]. What does that have to do with anything?
Re:Cray? (Score:1)
Coolest Looking Supercomputers (Score:5, Interesting)
Re:Coolest Looking Supercomputers (Score:2)
I don't know about that... (Score:3, Interesting)
More pictures here (Score:2)
Re:I don't know about that... (Score:1)
j/k :P
Re:Coolest Looking Supercomputers (Score:3, Interesting)
Re:Coolest Looking Supercomputers (Score:2, Funny)
Re:Coolest Looking Supercomputers (Score:2)
So how long will people continue to be in the loop?
I, for one, welcome our self-designing, etc, etc
Re:Coolest Looking Supercomputers (Score:3, Interesting)
Re:Coolest Looking Supercomputers (Score:2)
I used to regularly work in a lab where I walked right by a Cray-2 with the Fluorinert waterfall. Pointless, but cool looking.
Re:Coolest Looking Supercomputers (Score:1)
Go AMD (Score:2, Interesting)
Im just loving the vendors picking up on AMD.
Their idea seems very interesting in theory. It sounds like HPC's version of the math co-processor->crypto accelerator idea.
And at least they are not basing the userland on Unicos
Complexity, current machines (Score:4, Interesting)
The only difference I see is that they're relying on an intelligent compiler to decide which bits to send to which processing unit, but I'm not sure how much faith can be placed there. Cray certainly has a lot of supercomputing experience, but relying on compiler improvements to make or break an architecture doesn't have a good track record. I'm curious to see how they fare.
Re:Complexity, current machines (Score:3, Informative)
If you read further into the article, you would have noticed TFA talks about a new programming language called "Chapel".
So, they aren't re
Re:Complexity, current machines (Score:2)
Seriously. Just ask Transmeta. Or Intel (think Itanic).
Re:Complexity, current machines (Score:4, Interesting)
Your being fairly pedantic about the computer architecture anyway. Yes, pairing multipe processor types together is not new, but most mpp supercomputers use identical node types.
The jist of this story is simpler than it sounds. Cray has 4 product lines with 4 cpu types, 4 interconnect routers, 4 cabinet types, and 4 operating systems. They would like to condense this down. The first step is to reuse components from one machine to the next. There are distinct advantages for keeping the 4 cpu types for various problem sets, but most everything else could be multi-purpose. From the sounds of things, it's using the next generation of the seastar router in all of the machines. Thus you use the same router chips, cabling, backplane, and frame for all the products. This reduces the number of unique components cray has to worry about. If they go to DDR2 memory on the X1 and mta, that further simplifies things, though I suspect they won't.
Well, once you share parts, why not make a frame with a bunch of general purpose CPUs for unoptimized codes, and a few fpga or vector cpus for the highly optimized codes? It allows customers more flexibility, and introduces cray's mid-range customers to the possibility of using the really high-end vector processors currently reserved for the high-end X1 systems. It's also a win for the current high-end customers. On the current X1 systems, you have these very elaborate processors running the user's optimized application, but the vector cpu's also end up running scalar codes like utilities and the operating system. These are tasks the vector cpu's aren't terribly good at, and you're using a $40,000 processor to run tasks a $1000 opteron will do better. Even if the customer isn't interested in mix-n-match codes on the system, (which I'm skeptical any cray customer really is), you probably want to throw a few dozen opteron nodes into the X1's successor, just to handle the OS, filesystems, networking, and the batch scheduler.
Re:Complexity, current machines (Score:2)
Paradoxically, I believe that the major problem in making a really good vector processor is in pushing the envelope in single thread performance as well (Amdahls law and all that). In comparison, parallelism is easy. So in that sense, it would make sense for Cray to rely on AMD and x86 market volume to get good single thread performance very cheaply, and then concentrate resources on making
Re:Complexity, current machines (Score:3, Interesting)
Supercomputing v Distributed Computing (Score:1, Interesting)
Surely the computing environment has
Re:Supercomputing v Distributed Computing (Score:3, Informative)
Well yes, they are very different. Processor speed is clock rate and tells you precisely jack shit about how much work can actually be done. Computing power is better measured in operations per second. Typically we measure integer and floating point performance separately. Even those benchmark numbers are usually pretty useless; hence we have the SPECint and SPECfp benchmarks which suppose
Re:Supercomputing v Distributed Computing (Score:1)
Re:Supercomputing v Distributed Computing (Score:2)
Re:Supercomputing v Distributed Computing (Score:2)
You're ignoring one *major* element of scientific computing vs. something like SETI@home. SETI requires *very* little communication over the network and *no* communication between the peers doing the computation. The kind of scientific computation that someone would do on a high end cluster or supercomputer (say, a weather model or a model of an airplane) requires a great deal of communication and, even more important, synchronization. Think about what happens if you have 10,000 proc
Re:Supercomputing v Distributed Computing (Score:2)
REally 2 different tools for 2 different problems. Distributed computing is really only useful for highly parallel tasks that require a LOT of computation on very little raw data. Furthermore, it has to be on data you don't mind shipping off to joe anonymous to be processed.
Current and future crays are typically run
Re:Supercomputing v Distributed Computing (Score:2)
Re:Supercomputing v Distributed Computing (Score:2)
Imagine a beowulf cluster of Cray supercomputers!
Re:Supercomputing v Distributed Computing (Score:1)
I'll pre-order the next version (Score:1, Funny)
This begs the question... (Score:5, Funny)
Re:This begs the question... (Score:2)
Re:This begs the question... (Score:1)
Cray CTO Steve Scott.
Re:This begs the question... (Score:2)
Re:This begs the question... (Score:1)
Ira
Good Linux Journal Article On This (Score:2, Informative)
http://www.linuxjournal.com/node/8368/print [linuxjournal.com]
Re: (Score:1, Flamebait)
Cray as a company in general (Score:2)
Re:Cray as a company in general (Score:5, Informative)
The Cray we know now shares a name with the Cray that produced the famous Cray supercomputers of old, they also have some nice technology around, but there the similarities stop.
building machines around problems (Score:4, Interesting)
HPC/Beowulf clusters are about building machines around problems
That is why Clusters are such a powerful paradigm. If your problem needs more processors/memory/bandwidth/data access, you can design a cluster to fit your problem and only buy what your need. In the past you had to buy a large supercomputer with lots of engineering you did not need. Designing clusters is an art, but the payoff is very good price-to-performance. I even wrote an article on Cluster Urban Legends [clustermonkey.net] the explains many of these issues.
Re:building machines around problems (Score:2)
You only buy as much hardware as you need, but hardware is only half the cost of a computer like that. Infrastructure (physical, hardware, administrative, and management), software, and planning is a big part of the cost. Every time you install a capability-class machine, you plan for it several years in advance, make space/power/cooling available for it. Hire people to manage the machine. Port your applications to the machine. Install the machine, test and benchmark. Then admi
And What If... (Score:4, Insightful)
And what if I don't want multiple processor architectures, but instead just lots and lots of the single architecture my code is compiled for?
Re:And What If... (Score:2)
This announcement is telling us that they are planning to make new designs available which is not the same as saying that the old designs are no longer available.
Re:And What If... (Score:4, Insightful)
The idea is that all the CPU types will be blades that all use the same router, and plug into a common backplane, and that the cabinets all cable together the same way. In all cases, I imagine there will be opterons around the periphery, as I/O nodes and running the operating system. Then you plug in compute nodes in the middle, where the computer nodes can be a bunch more opterons, or vector cpu's, or fpga's, or multithreaded cpus. There will certaintly be plenty of customers only interested in lotsa opterons on cray's fast interconnect, and they just won't buy any of the custom cpus.
And What If... You Actually Read The Article? (Score:2)
Re:And What If... (Score:2)
Build to the application? (Score:1)
That seems like a good idea, but you end up with a "one trick pony" that does only one thing really well. Once that application is end-of-life or no longer needed, your million dollar machine is worthless piece of lounge furniture unless it can be reconfigured for some other application.
To me, it doesn't seem like a good investment. Then again, that's probably why I'm not building super
Re:Well, that is what supercomputers do... (Score:2)
From my understanding most supercomputers are built to do one task... Either it be fold proteins, simulate nuclear explosions, predict weather, simulate the big bang, or various other number crunching task. By the time they are done, they have to move to the next project... Mostly because of being out of date every 5 years.
Re:Build to the application? (Score:2)
(iteratively) adapt the system to the application (mix)
Re:Build to the application? (Score:1)
Has to be said (Score:1)
Buzz word. (Score:3, Insightful)
There have been several attempts (hpfortran, orca, etc..) to automate parallisme but most of them failed because a skilled programmer could create a much faster application within a few days. And remeber that a 10% performance boost in these applications means thousands of dollars saved.
So I suspect this is just a buzz word.
Re:Buzz word. (Score:2, Informative)
Re:Buzz word. (Score:2)
If cray gets this working that would be great ofcourse but I doubt it. Combining several different cpu's is a good idea but this is already occuring. As noted in another reply SGI calls this "Multi-Paradigm Computing" which I consider as a much better buzzword.
Using 'adaptive' implies some sort of autom
Re:Buzz word. (Score:1)
They could've probably been more clear, since it was a bit of a dry read. The idea is a steady progression from heterogenous computing between nodes of different types to a tightly-coupled, single system with coprocessors on the same bus during Phase 3 for the government's Cascade research program due in 2009/2010. I believe that's nothing at
Re:Buzz word. (Score:1)
http://www.sgi.com/features/2004/july/project_ult
Re:Buzz word. (Score:3, Insightful)
Sadly the answer is that it's not even a race. SGI brought foreward their first step already, but won't get past that. You can now buy an fpga blade to put in your altix. While cray is just now announcing a unified vision for this, they've already had their fpga based solution since they bought octiga bay 2 years ago.
As much as cray is suffering financially, SGI is in much worse shape, and they have about $350million in debt around the
Re:Buzz word. (Score:2)
Old Story (Score:1)
http://www.sgi.com/features/2004/july/project_ult
Re:Old Story (Score:1)
Re:Old Story (Score:2, Informative)
SGI has a 2nd generation product [sgi.com] based on this: RASC, which is a node board with 2 FPGA chips that integrates (same access to shared memory) with the rest of the machines Itanium node boards.
Re:Old Story (Score:2)
I for one... (Score:1, Troll)
Sounds like SGI, sadly (Score:2, Insightful)
What's next for Cray? The Cray Future! (Score:1)