The Purdue Workshop on Grand Challenges in Computer Architecture fbr the Support of High Performance Computing was held at Purdue University on December 12 and 13, 1991. The workshop was sponsored by the National Science Foundation to identify critical research topics in computer architecture as they relate to high performance computing. After a wide-ranging discussion of the computational characteristics and requirements of the grand challenge applications, four major architectural challenges were identified as crucial to advancing the state of the art of high performance computation in the coming decade. These computer architecture grand challenges are summarized below. Challenge I : Idealized Parallel Computer Models PL parallel computer model provides the interface between parallel hardware and parallel software. It is the idealization of computation that computer architects strive to support with the greatest possible performance. Although a singlc: model may not fulfill the requirements of all effective architectures and applicatiion domains, the nlultitude of alternatives must be reduced to a small number to support portability of programs and reusability of program parts. Challenge 2: Usable Peta-Ops Performance This challenge addresses the need for usable computer performance orders of magnitude greater than both the giga-ops performance available today and the tera-ops performance which may be achieved soon. This computer perfonmance cannot be obtained by simply interconnecting massive quantities of existing prlocessor, memory, and I/0 resources. Such a system would be unmanageable to program and would ineffectively utilize its processors. The challenge is to (1) dramatically improve and (2) effectively harness the base technologies impacting processors, memory, and UO into a computer system such that the grand challenge applications programmer has available peta-ops (1015 ops) of usable processing performance. Challenge 3: Computers in an Era of HDTV, Gigabyte Networks, and Visualizlztion Itmerging technologies are providing an opportunity to support startling new communication-intensive applications, such as digital video workstations that treat images as easily as characters are treated today. How can computelr architecture and new communications technology evolve to enable such applications? Challenge 4: Infrastructure for Prototyping Architectures Testing a new idea in computer architecture has been a difficult process requiring large investments in building design tools and providing a suitable software environment for an experimental machine. Prototype development involves not only hardware, but also software in the form of compilers and operating systems. An frastructure is needed to facilitate the study of the effects of new hardware technologies and machine organizations against different application requirements. These grand challenges in computer architecture are inherently multidisciplinary and will require team efforts crossing boundaries from software to hardware to applications. While it is crucial that the above challenges be addressed, it is important to stress that the viability and usability of parallel computers is also a function of the supporting software systems. Thus, a substantial effort must be devoted to advancing the software aspects of high performance computing. This involves improving the software interface supported by paralllel computers and developing languages, compilers, and software tools that simplify the task of parallelizing, mapping, and optimizing algorithms for efficient execution on parallel computers. In the arena of high performance parallel computers, it is more important than ever for computer architects to consider the issues of system software, application needs, and usability when designing and implementing machines. To address the interaction of this full range of subjects is a challenge in itself.

Date of this Version

July 1992