Abstract
Productivity gains in development of software systems has been modest over the 45-50 years that I have been involved in writing programs. Productivity gains in high performance computing in particular have been even more modest than across the industry in general. This talk will rationalize the relative failure in HPC and sketch an approach which could enable orders of magnitude improvement in productivity for development of HPC software systems for all types of execution environments. The technical challenges and opportunities implicit in the approach will be discussed. Barriers to productivity gains in HPC include: (i) The dramatic increase in complexity of HPC algorithms and applications coupled with a dramatic increase in complexity, diversity and scale of HPC execution environments, (ii) Little CS/CE research on productivity directly addresses HPC-specific problems such as parallelism, macro-locality and distributed state. The conceptual basis for dramatically increasing productivity in HPC already exists and includes: (i) Attention to HPC-specific design, evaluation and execution issues, (ii) Component-based development coupled with automation and tools, (iii) Coherent unification of design time, compile time and runtime languages mechanisms. Implementation of these concepts in HPC raises major technical challenges: (i) development environments must be extended to address HPC-specific issues including diverse and scalable parallelism, macro-locality and distributed state, (ii) Compilation processes must become more semantically complex and (iii) Compilation and runtime systems must become more knowledge-based and be more effectively unified.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Browne, J.C. (2005). Productivity in High Performance Computing. In: Bader, D.A., Parashar, M., Sridhar, V., Prasanna, V.K. (eds) High Performance Computing – HiPC 2005. HiPC 2005. Lecture Notes in Computer Science, vol 3769. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11602569_2
Download citation
DOI: https://doi.org/10.1007/11602569_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-30936-9
Online ISBN: 978-3-540-32427-0
eBook Packages: Computer ScienceComputer Science (R0)