Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
4.x Performance • Technology drivers – Exascale systems will consist of complex configurations with a huge number of potentially heterogeneous components – Deep software hierarchies of large, complex software components will be required to make use of such systems – Sophisticated integrated performance measurement, analysis, and optimization capabilities will be required to efficiently operate an exascale system 4.x Performance • Alternative R&D strategies – Performance-aware design and implementation – Stronger emphasis on modeling and auto-tuning – Self-optimizing frameworks and runtime systems – Optimization for power or resiliency Priority Research Direction (Performance Modeling) Key challenges • Architecture and application complexity • Accuracy • Concurrency • Dynamic/runtime performance model Potential impact on software component • Enable model-driven design and implementation of software • Enable model-based steering Summary of research direction • Modeling of complex, large, potentially heterogeneous computer systems and applications • Methodology development Potential impact on usability, capability, and breadth of community • Better informed, lower risk procurements • Better application / architecture mappings • Higher sustained performance Priority Research Direction (Performance Measurement and Analysis) Key challenges • Perturbation and data volume • Concurrency • Heterogeneity • Drawing insight from measurements • Quality information sources Potential impact on software component • More scalable, capable, easier-to-use tool environments • Improved interoperability and standards • More modular and reusable tools Summary of research direction • Develop scalable collection (online reduction and filtering, clustering), analysis (clustering, data mining), and visualization (hierarchical) • Support for heterogeneous hardware and hybrid programming models • Automated / automatic diagnosis • Vertical integration across software layers (OS, compilers, runtime systems, middleware, application) • Performance analysis in presence of noise and faults • Performance optimization for other metrics than time (e.g. power and resiliency) • Engage vendors to improve performance information streams Potential impact on usability, capability, and breadth of community • Higher sustained performance • Boosting value of HPC investments • Increase scientific productivity Priority Research Direction (Autotuning) Key challenges • Wider applicability • Impractical search spaces • Dynamic adaptation • Heterogeneity Potential impact on software component • Common frameworks for autotuning speeds adoption and progress by application software Summary of research direction • Methodology development for runtime adaptivity •Common methods and harnesses for implementing autotuning • Coordination of heterogeneous resources by OS • Using parallelization of performance experiments to speed searches Potential impact on usability, capability, and breadth of community • Increase the value of investments in HPC by keeping performance closer to optimality • Lowered costs for performance engineering done automatically in the field rather than by specialists 4.x Performance Performance modeling, simulation, measurement and analysis Handle Billon-way concurrency Characterize performance of exascale HW + SW for app enablement Processing Rate Support for hybrid programming models Handle millon-way concurrency Handle 300 millon-way concurrency Predictive exascale system design Handle heterogeneous HW 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 4.x Performance • Recommended research agenda – Develop scalable performance measurement collection (online reduction and filtering, clustering), analysis (clustering, data mining), and visualization (hierarchical) – Support for heterogeneous hardware and hybrid programming models – Automated / automatic diagnosis / autotuning – Vertical integration across software layers (OS, compilers, runtime systems, middleware, application) – Performance analysis in presence of noise and faults – Performance optimization for other metrics than time (e.g. power) – Engage vendors to improve performance information streams 4.x Performance • Crosscutting considerations – Performance-aware design, development and deployment of hard- and software – Integration with OS, compilers and runtime systems – Support for performance observability in HW and SW (runtime)