Petaflops? DARPA Seeks Quintillion-Flop Computers
coondoggie writes "Not known for taking the demure route, researchers at DARPA this week announced a program aimed at building computers that exceed current peta-scale computers to achieve the mind-altering speed of one quintillion (1,000,000,000,000,000,000) calculations per second. Dubbed extreme scale computing, such machines are needed, DARPA says, to 'meet the relentlessly increasing demands for greater performance, higher energy efficiency, ease of programmability, system dependability, and security.'"
From TFA, written by Michael Cooney and propagated by the summary:
It looks like these "extreme scale computing" systems are needed before things like "ease of programmability" can be acheived. I call bullshit.
The actual notice from DARPA is named Omnipresent High Performance Computing (OHPC). From the first paragraph of that page:
That makes a lot more sense.
Now, will someone please go and smack Michael Cooney up the back of head for writing like that?
Call me tinfoil hat wearer, but me thinks they want a faster way of cracking encryption...
Quintillion is not an SI prefix. The next step after Peta is Exa.
The Tao of math: The numbers you can count are not the real numbers.
I want to run Crysis 2 in software rendering mode
Summation 2
They come up with ideas that only ultra-geeks and science fiction nerds could come up with, and then they get billions in funding for it! It's like paradise. The fact that they're actually successful at advancing human technology is just icing on the cake.
Norton bogs my computer down too but that is just crazy :)
Simulating exploding hydrogen bombs, weather simulation, brute-force cracking, etc. Basically any distributed project you can think of (see BOINC) can also be done with a supercomputer.
It's a scientific model with a boatload of variables and dependencies. Ask these guys.
Well, what is it about weather simulation that requires so much work?
The enormous number of variables, mostly. Weather, nuclear bombs, ocean currents, cryptography, even things as seemingly simple as modeling air flow around an object. If you are looking to develop a model of a process that involves a few thousand variables and you need to know the interaction of those variables several levels deep....you need to make a lot of calculations.
It hasn't been all that long that computers have had the computational power to dominate humans in games as 'simple' as chess.
"Sacrifice for the good of The State" - The State
I mean, specifically, what can you do on something that fast that you couldn't do on one 1,000 (or 1,000,000) times slower? What kind of tasks need that much processing power? For example, you normally hear about them being used for things like weather simulation. Well, what is it about weather simulation that requires so much work?
Theoretically there's nothing you can't do on a supercomputer that you couldn't do with an ordinary desktop computer (except possibly for memory constraints), but for that matter you could also do everything by hand. The thing is, when your problem space is very large (i.e. calculating all interactions between X number of objects, where X is some huge number, or solving something like the Traveling Salesman Problem), you are limited in your options of what you can do to get results faster. If you're lucky, you can find some speedup of your problem (I.E. going to a better level of O-complexity [O(2^N)->O(n^2) would be a huge speedup, but doesn't happen often]), or tossing more resources at it. Yes, it'll still be slow, but if it takes you a year to do on a supercomputer, that's quite a bit better than spending 1000 years waiting on a regular computer.
Imagine a simulation in 3D space. You model the space by a cube of 100x100x100 grid points. That's one million data points. Now say you have to do some calculation on them which scales quadratic in the number of data points. Say you manage to finish the calculation in one hour on some computer.
OK, but now you notice that those 100 data points in each direction are to inaccurate. You need 1000 points to be reasonably accurate. So now your data set is not one million, but one billion data points. And your O(N^2) algorithm makes sure that this factor 1000 in the number of grid points ends up as a factor one million in your computing time. So now the calculation would, on the same computer, need one million hours, or about 114 years. You almost certainly don't want to wait 114 years to get your results.
The Tao of math: The numbers you can count are not the real numbers.
There are broad classes of algorithms where you can make good use of essentially arbitrary amounts of computing power to get better answers. When doing physical simulations of something like airflow over a jet wing, or the movement of a weather system, or the explosion of a hydrogen bomb, you'll break everything up into tiny units that you treat as monolithic elements whose behavior can be treated relatively simply, and calculate what happens to them over some tiny timescale, call the result the new state of the universe, and repeat. This is called "finite element analysis".
Because you're calculating everything in discreet steps, though, errors creep in and accumulate. The more processing power you have, the more elements you can use and the smaller time scales you can calculate over and get a more accurate answer in the same amount of time. The reason it's unacceptable to do the same calculation but have it go 1,000 or 1,000,000 times slower is that these simulations might already take hours, days, weeks, or even longer. Even the longest DoD contract needs an answer to the behavior of a proposed jet fighter wing in less than 1,000,000 days. :)
Scientific computing is an area where there will always be a use for more processing power.
There are other areas where it can be important, when you have real time constraints and can't just reduce your accuracy to make it work. I recall a story from advanced algorithms class where a bank was handling so many transactions per day that the time it took to process them all was more than 24 hours. Obviously this was a problem. The solution in that case was to modify the algorithm, but that's not always possible, and you need more computing. This is a little different in that you need the extra power to allow growth, as opposed to science where you could hand them an exaflop computer today and they'd be able to use it to its fullest.
The enemies of Democracy are
If you take weather simulation :
At a given point, you have a bunch of physical equations taking a set of parameters at time t and giving you these same parameters at time t+1. Of course, the smaller the time step, the better the result.
To have the best possible result, you should consider the whole globe at once (think phenomenon like thermohaline circulation for example). However, you should also consider the finest grid possible, to take into account the heterogeneity of the geography, the local variations due to rivers, etc. It is also important to consider a three-dimensional model if you want to transcribe the atmospheric circulation, the evaporation, etc.
I forgot the exact numbers, but Wikipedia gives an example of a current global climate models using a grid of 500,000 points (see http://en.wikipedia.org/wiki/Global_climate_model ), which is a pretty coarse resolution, working with tiles of tens of thousands kilometer square.
With the current computing capabilities, we can not go much farther for a global model. This is already an impressive improvement compared the first models, which were two dimensional and used very simplified equations, overlooking a large number of important physical mechanism.
At the same time, we have satellite data several orders of magnitude more precise. Data from the satellite ASTER were computed to provide a complete altitude mapping of the globe with a theoretical resolution of 90 m. The vegetation cover can be obtained at a resolution of 8m using commercial satellite like FORMOSAT-2. Even the soil moisture can be measured at a resolution of around 50 km thanks to the new satellite SMOS.
These sets of data are already used at the local level, for example to model the transfer between the soil and the atmosphere, taking into account the vegetation (SVAT modelling). It makes no doubt that a global climate model using a more precise grid and these data would significantly improve its prediction.
In fluid dynamics simulations (which include weather stuff), there are huge computational problems. I work in the field, so bear with me a little.
The best model we have so far for fluids is to use balance equations (look up the Navier Stokes equations). This means that in order to describe the evolution of a fluid in a given domain, we need to split the domain into small cells, and then integrate numerically the balance equations. To put it simply, you have to integrate numerically a system of ordinary differential equations with many many variables (degrees of freedom).
For a simple but "correct" Navier Stokes simulation, the number of degrees of freedom is proportional to Re^(9/4), where Re is the Reynolds number (the memory requirements are proportional to the number of degrees of freedom). This Reynolds number, for typical systems (like the atmosphere) is of the order of at least 10^4-10^6 (you can look up typical values on wikipedia if you're interested). Furthermore, the number of timesteps needed for a "correct" simulation is proportional to Re^(3/4).
But these are not the most complicated simulations that are to be run on such machines. Research for issues like controled nuclear fusion needs to address much more demanding problems.
Numerical simulations of physical systems are inherently hard, because they scale polynomially with their complexity. However, they are generally cheaper than actual experiments, and you have access to more data.
new sig
You should realise that the "S" stands for seconds. Okay - it doesn't matter that much, but this is meant to be a technical site. The editors should really get this stuff right.