The Defense Advanced Research Projects Agency - the research and development arm of the US military - has issued a challenge to nerds, geeks, techies, and boffins to bid on how they would build a petaflops-scale system of nearly unimaginable energy efficiency and compactness. Oh, and the prospective system also needs to be mobile and require no special programming skills to use.
In other words, DARPA wants an AK-47 that crunches numbers. Lots of numbers.
El Reg caught wind of DARPA's ExtremeScale thinking back in June 2009, when DARPA issued a request for information to the HPC community to come up with a supercomputing system that could jam a petaflops in a rack, burn only about 57 kilowatts (enough to be powered by a portable electric generator and including the juice needed to cooling the rack), and be easy to program. The idea seems patently ridiculous based on current technologies, and it's particularly silly without thinking about the price tag of such a development effort.
Still, DARPA is apparently unhappy enough about the current plans for exascale supercomputers from IBM, Cray, and Silicon Graphics - which Uncle Sam more or less pays to be in the HPC business - to go off the board and issue the ExtremeScale challenge to anyone who thinks they can crack the problem. And rather than trying to focus on creating ever-more-powerful supers, DARPA wants much smaller supers with lots of power and crazy levels of energy efficiency. It wants portable petaflops, mainly because you can't trust network links on a battlefield. (Even if you did, as DARPA did, invent the Internet).
You can fill out the request for proposal form to try to get on the list to participate in the bidding process for the Ubiquitous High Performance Computing program at DARPA here and take a look at the detailed goals of the program there.
DARPA is crazy, but it is not insane, and therefore, it does not expect companies to literally support its current applications on such a box - or even to support legacy compilers such as C and Fortran. The UHPC project does not expect the technologies proposed to be available until 2018, and it does not even care so much if the underlying technologies that would be deployed in a UHPC ExtremeScale system get widely commercialized. But DARPA is adamant that it wants to cram the system, its networking, its storage, and its cooling into a cabinet that is 24 inches wide by 78 inches high and 40 inches deep - a little wider and taller than a standard server rack.
DARPA also wants the system to deliver 50 gigaflops per watt on the Linpack benchmark test, with a peak performance of one petaflops. That 57 kilowatt power budget is essentially what is required to completely run the box. The system has to chew on data coming in from a massive streaming sensor array, do single- and double-precision floating point math that is compatible with IEEE754 standards as well as 16-bit, 32-bit, and 64-bit integer math. The UHPC ExtremeScale system will need something on the order of 10 bytes per flops, or 10 petabytes, according to the DARPA specs.
Looking for a software miracle
As if designing such a piece of hardware did not push the limits of materials science and physics, DARPA wants miracles out of the software stack on the ExtremeScale machine too. The machine has to have a "self-aware" operating system that can learn from how it is used and adapt to the "changing goals, resources, models, operating conditions, attacks, and failures" that might happen in the field and "mitigate the effects of attacks and failures, closing exploited vulnerabilities."
The system has to make parallel programming easier, so your typical application domain expert can use it without mucking about with parallelism, and the system has to be able to change its parallelism - the number of nodes, cores, and threads - on the fly while an application is running, coping with changing conditions. DARPA understands that to make this all work, propeller heads will have to come up with an entirely new execution model for applications. So do that too.
Before you finish up the design on your black box, DARPA wants you to consider how multiple UHPC machines might be linked together for scalability and resiliency.
DARPA has five applications that it wants to run on the prototype UHPC ExrtemeScale boxes: a massive streaming sensor data problem "resulting in actionable knowledge;" a large dynamic graph-based informatics problem; a decision problem that includes search, hypothesis testing, and planning; and two applications drawn from the Department of Defense stack, which will be selected after the UHPC program starts.
Like past DARPA HPC awards - which resulted in current systems being brought to market by IBM and Cray this year - the UHPC program has multiple phases, in this case four. Phase one lasts 24 months and will show the concepts behind the UHPC systems and their execution models, with phase two (also 24 months long) delivering a preliminary prototype. Phase three completes the system design and benchmarks, and phase four delivers a prototype system, compiler, and OS in a lab environment.
Interestingly, DARPA is not ponying up the hundreds of millions of dollars you might expect with the UHPC effort. In phase one and two, there are teams that will design UHPC systems and another set of teams that will design the benchmarks and data sets to test the machines. DARPA is allocating $3.25m for the first year of phase one and $5.25m for the second year for the developers; the UHPC testers get $1.75m per year. (Clearly, it is easier to come up with a test than come up with a system design.) In phase two, UHPC developers get $8.65m per year and testers get $2m per year.
DARPA has not divulged the budget for phases three and four of the UHPC ExtremeScale computing challenge. It expects to have five teams in phase one (composed of industry and university experts) and three teams in phase two. Three teams are expected to make the cut to phases three and four, with IT vendors taking the lead.
One last thing: DARPA would also like a little red wagon, a sailboat, and a pony. ®