Interoperable Design of Extreme-scale Application Software (IDEAS)
- Join us at Supercomputing 2016 (SC16) in Salt Lake City, where will will give a tutorial on HPC software testing and are co-organizing a birds-of-a-feather on software engineering for computational science and engineering. [More info]
The IDEAS Project is intent on improving scientific productivity by qualitatively changing scientific software developer productivity, enabling a fundamentally different attitude to creating and supporting computational science and engineering (CSE) applications.
We are creating an extreme-scale scientific software development ecosystem composed of high-quality, reusable CSE software components and libraries; a collection of best practices, processes, and tools; and substantial outreach mechanisms for promoting and disseminating productivity improvements. We intend to improve CSE productivity by enabling better, faster and cheaper CSE application capabilities for extreme-scale computing.
IDEAS is addressing productivity concerns that are emerging from important trends in extreme-scale computing for science and engineering. IDEAS will:
- Address a confluence of trends in hardware and increasing demands for predictive multiscale and multiphysics simulations.
- Respond to a trend of continuous refactoring with efficient, agile software engineering methodologies and improved software design.
Impact on Applications & Programs
The IDEAS Project focuses on three concrete use cases:
- Hydrology and Biogeochemical Cycling in the Colorado River System
- Hydrology and Soil Carbon Dynamics of Arctic Tundra
- Hydrologic, Land Surface, and Atmospheric Process Coupling over the Continental United States.
These terrestrial ecosystem use cases tie IDEAS to modeling and simulation goals in two Science Focus Area (SFA) programs and both Next Generation Ecosystem Experiment (NGEE) programs in DOE’s Office of Biologic and Environmental Research (BER).
Deeper understanding and answers to important science questions for these use cases require improved multiscale and multiphysics computational simulations. The directed efforts to address use-case needs provide guidance to three specific focus areas that will have broad impact on the computational science and engineering community:
- IDEAS xSDK: A major deliverable of IDEAS is the Extreme-scale Scientific Software Development Kit (xSDK). The xSDK currently includes four major DOE library products (hypre, PETSc, SuperLU, and Trilinos) and the Alquimia biogeochemistry domain component. The xSDK provides an interoperability layer that enables easy installation and combined usage of xSDK packages.
- IDEAS Howto: In addition to xSDK development and other software efforts to address the IDEAS use cases, IDEAS focuses on methodologies (“howto” content) to cultivate best practices, processes, and tools for improved scientific software development. IDEAS is providing content that will enable other application teams to improve their own development efforts.
- IDEAS Outreach: The final piece of IDEAS is dissemination of the content developed in the project. This includes tutorials on the IDEAS xSDK and the methodologies we develop, in collaboration with DOE computing facilities ALCF, NERSC, and OLCF. IDEAS outreach also includes collaboration with the broader computational science community, which is also facing similar challenges and opportunities for improving productivity.
The IDEAS Project is a unique collaboration between the DOE Office of Advanced Scientific Computing Research (ASCR) and the Office of Biological and Environmental Research (BER). This partnership ensures delivery of crosscutting methodologies, software, and metrics with impact on important scientific applications and programs.
The IDEAS Project is composed of an interdisciplinary multi-institutional team (ANL, LANL, LBNL, LLNL, ORNL, PNNL, SNL, Colorado School of Mines) and leverages a broad set of relationships within the Department of Energy and the broader community.