PHOENIX Cray Inc. and Sun Microsystems Inc. tipped plans at the Supercomputing 2003 conference here Tuesday (Nov. 18) to create radical new software architectures for petascale-class systems they are developing as part of a competitive government research contract.
Cray said it will define a new high-performance programming language and Sun will try to get the industry to standardize on a set of low-level software primitives as part of their proposals to the High Productivity Computing Systems (HPCS) project.
IBM, the third vendor competing in the HPCS program, suggested it will pursue an aggressive extension of today's message-passing interface as part of its software strategy for a petaflops system. All three competitors agreed that programming today's most power supercomputers has become extremely difficult, something the HPCS project hopes to address.
Hans Zima, principal scientist at the Jet Propulsion Laboratory (Pasadena, Calif.), said he started working with two top Cray engineers in July to define a high-level programming language for Cray's Cascade project under the HPCS program sponsored by the Defense Advanced Research Projects Agency. A final paper definition of the HPCS designs are not due until 2006 when Darpa will select vendors it will fund to build petaflops systems.
Zima said the new language will help software developers exploit both parallel programming techniques and the locality of data in a large clustered system. The language will hide details of the underlying CPU but expose specifics about the communications technology used in the high-end cluster. It will also support today's message-passing interface (MPI) and global-address-space programming models, he added.
Getting high-end computer users to rally around a new language will be a tough job given past failures with languages such as Ada, HPF and Prolog, said Zima. Therefore, he said, the Cray team will also show ways of extending Fortran and C++ to deliver the same functionality the new language could offer.
Sun will take a very different approach, attempting to rally the industry to standardize on low-level primitives software should present to a complier or run-time environment. One Sun partner described the effort as a kind of virtualization layer or run-time extension on top of the hardware so that every computer does not need to know the details of the programming language used.
"We need to come up with a software layer like a Java bytecode or a PDF format and standardize it," said John Gustafson, a researcher at Sun Labs.
IBM was less specific about its software plans. However, Mootaz Elnozahy, who directs IBM's HPCS program, suggested the company is interested in a hierarchical extension of today's MPI model that would expose to programmers more information about a systems overall communications, switching and storage architecture without making the programming task overly complex.
"MPI today is a flat model," Elnozahy said. A future MPI should provide information about whether a given communications process is between two threads on a die or two messages between separate nodes, he added.
"A traditional approach is not going to give you sustained petaflops performance, and it will require a heroic programming effort," Elnozahy said.