Challenges and Recommendations for Preparing HPC Applications for Exascale

While the HPC community is working towards the development of the first Exaflop computer (expected around 2020), after reaching the Petaflop milestone in 2008 still only few HPC applications are able to fully exploit the capabilities of Petaflop systems. In this paper we argue that efforts for preparing HPC applications for Exascale should start before such systems become available. We identify challenges that need to be addressed and recommend solutions in key areas of interest, including formal modeling, static analysis and optimization, runtime analysis and optimization, and autonomic computing. Furthermore, we outline a conceptual framework for porting HPC applications to future Exascale computing systems and propose steps for its implementation.

[1]  Constantine Bekas,et al.  A new energy aware performance metric , 2010, Computer Science - Research and Development.

[2]  Andrew Richards,et al.  Programmability and performance portability aspects of heterogeneous multi-/manycore systems , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[3]  Michael Gerndt,et al.  PERISCOPE: An Online-Based Distributed Performance Analysis Tool , 2009, Parallel Tools Workshop.

[4]  Roger Blowey,et al.  Best practice guides. , 2010 .

[5]  Erik H. D'Hollander,et al.  Transition of Hpc Towards Exascale Computing , 2013, ParCo 2013.

[6]  Vipin Chaudhary,et al.  VMeter: Power modelling for virtualized clouds , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW).

[7]  Bernd Mohr,et al.  Automatic performance analysis of hybrid MPI/OpenMP applications , 2003, Eleventh Euromicro Conference on Parallel, Distributed and Network-Based Processing, 2003. Proceedings..

[8]  Angewandte Mathematik,et al.  Towards a Performance Tool Interface for OpenMP: An Approach Based on Directive Rewriting , 2001 .

[9]  Thomas Fahringer,et al.  Teuta: Tool Support for Performance Modeling of Distributed and Parallel Applications , 2004, International Conference on Computational Science.

[10]  T. Fahringer,et al.  On Customizing the UML for Modeling Performance-Oriented Applications , 2002, UML.

[11]  Pavel Klavík,et al.  Changing computing paradigms towards power efficiency , 2014, Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences.

[12]  Anna Sikora,et al.  AutoTune: A Plugin-Driven Approach to the Automatic Tuning of Parallel Applications , 2012, PARA.

[13]  Vivek Sarkar,et al.  Software challenges in extreme scale systems , 2009 .

[14]  Nils Jansen,et al.  Fast Debugging of PRISM Models , 2014, ATVA.

[15]  Reiner Hähnle,et al.  ABS: A Core Language for Abstract Behavioral Specification , 2010, FMCO.

[16]  Ivona Brandic,et al.  A Survey of the State of the Art in Performance Modeling and Prediction of Parallel and Distributed Computing Systems , 2008 .

[17]  Fatos Xhafa,et al.  Hybrid Performance Modeling and Prediction of Large-Scale Parallel Systems , 2009, Parallel Programming, Models and Applications in Grid and P2P Systems.

[18]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[19]  David A. Bader Petascale Computing: Algorithms and Applications , 2007 .

[20]  Nils Jansen,et al.  Accelerating Parametric Probabilistic Verification , 2014, QEST.

[21]  Siegfried Benkner,et al.  Using explicit platform descriptions to support programming of heterogeneous many-core systems , 2012, Parallel Comput..

[22]  Siegfried Benkner,et al.  Efficient Hybrid Execution of C++ Applications using Intel(R) Xeon Phi(TM) Coprocessor , 2012, ArXiv.

[23]  Cédric Augonnet,et al.  PEPPHER: Efficient and Productive Usage of Hybrid Computing Systems , 2011, IEEE Micro.

[24]  Bernd Mohr,et al.  Scalable Parallel Trace-Based Performance Analysis , 2006, PVM/MPI.

[25]  John Shalf,et al.  The International Exascale Software Project roadmap , 2011, Int. J. High Perform. Comput. Appl..

[26]  Bedir Tekinerdogan,et al.  Model-Driven Approach for Supporting the Mapping of Parallel Algorithms to Parallel Computing Platforms , 2013, MoDELS.

[27]  Fatos Xhafa,et al.  Towards an Intelligent Environment for Programming Multi-core Computing Systems , 2009, Euro-Par Workshops.

[28]  Jesús Labarta,et al.  Tools for Power-Energy Modelling and Analysis of Parallel Scientific Applications , 2012, 2012 41st International Conference on Parallel Processing.

[29]  Bernd Mohr,et al.  KOJAK - A Tool Set for Automatic Performance Analysis of Parallel Programs , 2003, Euro-Par.

[30]  Thomas Lippert,et al.  The DEEP Project - Pursuing Cluster-Computing in the Many-Core Era , 2013, 2013 42nd International Conference on Parallel Processing.

[31]  Enrique S. Quintana-Ortí,et al.  Assessing Power Monitoring Approaches for Energy and Power Analysis of Computers , 2014, Sustain. Comput. Informatics Syst..