In Cooperation:
Second International Workshop on Software Engineering for High Performance Computing in
Computational Science and Engineering
November 21, 2014
Held in Conjunction with
SC14
Home
Call for Papers
Committee
Resources
Schedule
Overview
Shared Workshop Google Document: http://goo.gl/aCr2Xn
This workshop is concerned with identifying and applying appropriate software engineering (SE) tools and practices (e.g., code generators, static analyzers, validation + verification (V&V) practices, design approaches, and maintenance practices) to support and ease the development of Computational Science & Engineering (CSE) software for High Performance Computing (HPC). Specifically:- CSE applications, which include, large parallel models/simulations of the physical world running on HPC systems.
- CSE applications that utilize HPC systems (e.g., GPUs computing, compute clusters, or supercomputers) to manage and/or manipulate large amounts of data.
- Requirements:
- Risks due to the exploration of relatively unknown scientific/engineering phenomena;
- Constant change as new information is gathered;
- Design
- Data dependencies within the software;
- The need to identify the most appropriate parallelization strategy for CSE algorithms;
- The presence of complex communication among HPC nodes that could degrade performance;
- The need for fault tolerance and task migration mechanisms to mitigate the need to restart time-consuming computations due to software or hardware errors;
- V&V
- Results are often unknown when exploring novel science or engineering areas and algorithms;
- Popular tools often do not work on the latest HPC architectures; they need to be tuned to handle many threads executing at the same time.>/li>
- Deployment
- Failure of components within running systems is expected due to system size;
- Long system lifespans necessitate porting across multiple platforms
In the 2013 edition of the workshop, the discussion focused around a number of interesting topics, including: bit-by-bit vs. scientific validation and reproducibility. In addition, the previous workshop in this area have focused discussions on topics that included
- The unique characteristics of CSE software that affect software development choices;
- The appropriate context dimensions to describe CSE software;
- The major software quality goals for CSE software;
- Crossing the communication chasm between SE and CSE;
- Effectively involving scientists in software development and training;
- Measuring the impact of SE on scientific productivity;
- SE tools and methods needed by the CSE community;and
- How to effectively test CSE software.
Last Updated on August 11, 2014 by Jeffrey Carver