SC2003 Workshop on Petaflops Programming: 
Parallelism, Pain, and Perverse Programming Paradigms


SC2003, Phoenix, AZ
November 18, 2003

 

 

Petaflop architectures now on the drawing boards will enable a sequence of scientific breakthroughs and herald a new era in computational science.   At the same time, many petaflops architectures are likely to challenge systems designers, language developers, and compiler writers in totally new ways.   Pity the poor applications programmer at the end of this chain, who will have to live with the mistakes of architects, language developers and compiler writers alike.   A certain amount of "pain" in use of petaflops architectures is surely unavoidable – machines with hundreds of thousands of processors and awkward memory models will not be "user friendly."   Moreover, some experts believe that the intrinsic unreliability of hardware at the scale envisioned will force adoption of complex checkpoint and recovery strategies.   We firmly believe, however, that much of this pain can be ameliorated by clever architects and programming model designers, assuming they evince a depth of understanding and subtlety of approach not universally evident in the past.  

 

Addressing this broad circle of issues, a workshop consisting of three successive panels was held at SC2003.   The first panel looks at architectural trends and the shape of probable architectures at the beginning of the petaflops era.   The next panel  looks at evolving and expected programming models, and the way language and compiler developers hope to address the challenges posed by petaflops architectures.   Finally, in the third panel a set of current users of  high-end architectures  respond to the material presented during the other panels, and address the question of how well expected architectures and programming models will, in fact, serve the needs of the applications communities.  After each panel, the panelists and moderators from the other two panels were given an opportunity to grill the sitting panel and hold them accountable!

 

Index:

        

·   Architectural trends panel

 

·   Programming models panel

 

·   Applications panel

 

·   Workshop agenda

 

For further information contact the organizers:

 

   Fred Johnson, US Department of Energy (fjohnson@er.doe.gov)

   Lauren Smith, National Security Agency (llsmith@nsa.gov)

         John van Rosendale, US Department of Energy   (JohnVR@er.doe.gov)

 

or the sitemaster

 

       Gail W. Pieper (pieper@mcs.anl.gov)



Workshop Agenda

 

Architectural trends panel          

 

Moderator: Candace Culhane, National Security Agency (csculha@nsa.gov)

 

·   James Tomkins -- A Conservative Path to PetaFlop Computing

·   Ken Miura -- Petaflops Programming

·   William Dally -- PetaFLOPS Architecture: The 100,000 Processor Challenge

·   Mootaz Elnozahy -- Toward Petascale Computing: PERCS -- IBM Effort under HPCS

 

Programming models panel      

 

Moderator: Burton Smith, Cray Inc.   (burton@cray.com)

 

·   Rusty Lusk -- A Curmudgeon's Outlook on Petaflops Programming

·   Hans Zima -- Towards High-Level Programming Models for Petaflops Architectures

·   Kathy Yelick -- What Is Wrong with MPI for PetaFLOPS Computing?

·   Larry Snyder -- Peta-FLOPS Programming

 

Applications panel        

 

Moderator: Alan Laub, UC – Davis and DOE/Office of Science (laub@ucdavis.edu)

 

Speakers:

  

·        Chris Johnson -- Petaflops Applications: Pity the Applications Programmer Trying to Do Actual Applications

·        Mike Merrill -- PetaOp Applications?

·        Theresa Windus -- Petaflops Applications: Chemistry

·        Richard Loft -- Pity the Poor Peta-FLOPS Programmer

 

 


 


Session 1:  Petaflops Architectures:

Parallelism, Pain, and Perverse Programming Paradigms

 

Abstract

 

In this first panel of the three-part workshop, computer architects will talk about architectural trends and the shape of probable architectures at the beginning of the petaflops era.  This panel will focus on the emerging structure of likely petascale architectures, and what will be expected/needed from programming models, languages, and end users to handle such systems.   Questions the panelists should address include:

 

·   What architectural features will be easy to exploit and yield good performance?

·   What anticipated features will be complex and problematic for language designers, compiler writers and applications programmers alike?

·   What "features" will be so complex that only the run-time environment should see them, and could lead to fragile or down right awful performance?

·   Will architectures have so much complexity, and require so many levels of parallelism that our programming models need to reflect this same complexity?

·   What are the trends?

·   What will be the key things that programming models need to address?

 

Moderator: Candace Culhane, National Security Agency (csculha@nsa.gov)

 

 Speakers:

·   James Tomkins -- A Conservative Path to PetaFlop Computing?

·   Ken Miura -- Petaflops Programming

·   William Dally -- PetaFLOPS Architecture: The 100,000 Processor Challenge

·   Mootaz Elnozahy -- Toward Petascale Computing: PERCS -- IBM Effort under HPCS

 


 

 

Session 2:  Petaflops Programming Models:

Ameliorating Architectural Issues or Exacerbating Them?

 

Abstract  

 

This panel will look at evolving and expected programming models, and the way language and compiler developers hope to address the challenges posed by petaflops architectures.   Given the range of issues such systems are raising, which issues should the programming model attempt to address, and which should be passed on to the end user?  Hot-button issues include: how to handle fault tolerance, very deep memory hierarchies, interoperability, coping with tens or hundreds of thousands of threads, the semantics of intelligent memory, and so on.   Questions the panelists should address include:

 

·   What ideas look promising to solve some these issues?

·   What do future architectures need to incorporate to make  it easier for programmers and compilers?

·   Is it better to take an evolutionary or revolutionary approach?

·   What about engineering/adoption issues? 

·   Will users adopt new languages?

·   Are problem-solving environments be the way to go? 

·   What hooks does the language community really need in future architectures? 

·   Is compiler technology up to the task?

 

Moderator: Burton Smith, Cray Inc.   (burton@cray.com)

 

Speakers:

·   Rusty Lusk -- A Curmudgeon's Outlook on Petaflops Programming

·   Hans Zima -- Towards High-Level Programming Models for Petaflops Architectures

·   Kathy Yelick -- What Is Wrong with MPI for PetaFlops Computing?

·   Larry Snyder -- Peta-FLOPS Programming

 

 

 


 

Session 3:       Petaflops Applications:

Pity the Programmer Trying to Do Actual Applications

Abstract  

 

In this third panel a set of current users of high-end architectures will respond to the material presented during the other panels, and address the question of how well expected architectures and programming models will, in fact, serve the needs of the applications communities.   This panel will also discuss the sociological issue of what level of maturity and usability a language needs in order to be adopted by the HPC community.  Speakers in this panel will characterize their applications from the point of view of algorithms, architecture-factors (e.g. cross section bandwidth, cache issues) and programming model/language issues.   They should identify the biggest challenges they foresee in exploiting promised petascale systems and their views on the most profitable directions to take in architecture, programming model, systems and compiler research.  Questions the panelists should address include:

 

·   What are the biggest challenges you foresee in using petaflops architectures?

·   What do programming models need to provide you to allow you to exploit petaflops architectures productively?

·   What constructs or abstractions would make it easier for you to map your application on petaflops architectures?

·   At what point in the maturity of a new programming language, would you be willing to try a new promising model? 

 

Moderator: Alan Laub, UC – Davis and Office of Science (laub@ucdavis.edu)

 

Speakers:

  

·        Chris Johnson -- Petaflops Applications: Pity the Programmer Trying to Do Actual Applications

·        Mike Merrill -- PetaOp Applications

·        Theresa Windus -- Petaflops Applications: Chemistry

·        Richard Loft --- Pity the Poor Peta-FLOPS Programmer