Abstract
One question before the high-performance computing community is “How will application developers write code for exascale machines?” At this point it looks like they might be riding a rough beast indeed. This paper is a brief assessment of where we stand now with respect to writing programs for our largest supercomputers and what we should do next. MPI is likely to remain a critical part of the programming infrastructure as we move towards exascale, but more is needed, in particular a robust, portable, and effective standard for parallel programming within a single address space, perhaps for heterogeneous processors. Formal methods provide the only truly scalable approach to developing correct code in this complex programming environment.
