Introduction

The Extreme-scale Scientific Software Stack (E4S) is a community effort to provide open source software packages for developing, deploying and running scientific applications on high-performance computing (HPC) platforms. E4S provides from-source builds and containers of a broad collection of HPC software packages.

Purpose

E4S exists to accelerate the development, deployment and use of HPC software, lowering the barriers for HPC users. E4S provides containers and turn-key, from-source builds of more than 80 popular HPC products in programming models, such as MPI; development tools such as HPCToolkit, TAU and PAPI; math libraries such as PETSc and Trilinos; and Data and Viz tools such as HDF5 and Paraview.

Interoperability Approach

While porting of individual scientific software products is challenging, achieving interoperability between packages is even more difficult. E4S uses a dual-pronged approach for achieving software interoperability: Spack and SDKs.

Spack: E4S uses the Spack packages manager for software delivery. Spack provides the ability to specify versions of software packages that are and are not interoperable. It is also a common build layer to not only E4S software, but also an enormous number of software packages outside of ECP ST. These features support achieving and maintaining interoperability between ST software packages.

Software Development Kits (SDKs): An ECP ST Software Development Kit is a collection of related ECP ST software products (called packages) where coordination across package teams will improve usability and practices, and foster community growth among teams that develop similar and complementary capabilities. An SDK is more of a project than a product, although it involves several products. It can also be considered as an association of products and product teams. The activities that take place inside an SDK promote interoperability (where appropriate and logical) between products. The initial version 0.2 release of E4S contains member packages of one SDK - the Extreme-Scale Scientific Software Development Kit (xSDK). Future releases will incorporate additional SDKs that will be defined in the coming months.

Distribution

E4S is open source software published under the MIT License. E4S can be redistributed and modified under the terms of this license. E4S packages each have their own open source license.

Contacts

Name

Title

Email

Michael A. Heroux

Project Leader

maherou@sandia.gov

Sameer Shende

E4S Lead

sameer@cs.uoregon.edu

James Willenbring

SDK Lead

jmwille@sandia.gov

References

Conference

Date

Link

Getting Started with E4S for Industry and Agencies Workshop

June, 2021

E4S-IAW21

E4S: Extreme-Scale Scientific Software Stack

June, 2021

BSSW

E4S Tutorial at ECP Annual Meeting

April, 2021

Video

E4S BoF at ECP Annual Meeting

April, 2021

Video

State of E4S - July 2020 Update

July 2020

PPTX

ECP Software Technology Capability Assessment Report (CAR) Version 1.5

Feb, 2019

PDF

DOE’S E4S Software Stack Takes An Extreme Step Towards Exascale

Jan, 2019

Article

Extreme-Scale Scientific Software Stack (E4S) Release 0.1

Nov, 2018

Video