forked from E4S-Project/ECP-ST-CAR-PUBLIC
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Design.tex
21 lines (19 loc) · 3.13 KB
/
Design.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
\subsection{Contributions to External Software Products}\label{subsection:external-contributions}
While much of ECP ST efforts and focus are on the product that we develop and support, it is important to note that some of our important work, and certainly some of our most sustainable and highly leveraged work, is done by providing requirements, analysis, design and prototype capabilities for vendor and other third party software. Many software studies have shown that 70 to 80\% of the cost of a successful software product goes into post-delivery maintenance. Our effort summarized in Table~\ref{table:externalproducts} expressly eliminate this large cost for DOE because the product is developed and supported outside of DOE.
\begin{table}
\begin{tabular}{|L{1.5in}|L{4in}|}\hline
\rowcolor{LightCyan}
Product & Contribution\\\hline
Kokkos and RAJA & ECP efforts to provide portable on-node parallel programming and execution environments have led to new features in C++ standards \\\hline
MPI Forum & ECP ST staff maintain several chapters of the MPI Forum, effort that require a constant involvement with the other authors, as well as participation to the online discussions related to the chapter and regular attendance of the MPI Forum face-to-face activities.\\\hline
Flang & ECP funds development of the new open source Fortran compiler front end called Flang. Flang provides Fortran language support for LLVM backends, in a similar way as Clang provides support for C and C++.\\\hline
All \tools work & Starting in FY20, our \tools\ efforts are organized around delivering capabilities into the LLVM ecosystem. \\\hline
SWIG (www.swig.org) & The ECP ST ForTrilinos efforts contributes the capability to generate automatic Fortran bindings from C++ code.\\\hline
TotalView debugger & ECP ST staff are engaged in co-design of OMPD, the new debugging interface for OpenMP programs, along with RogueWave engineers. This effort helps RogueWave improve their main debugging product, TotalView, by making it aware and compatible with recent advances in OpenMP debugging.\\\hline
LLVM & An ECP ST staff member is co-leading design discussions around the parallel IR and loop-optimization infrastructure.\\\hline
SLATE & ECP ST math libraries efforts inform the design, implementation, and optimization of dense numerical linear algebra routines on most vendor platforms\\\hline
Cray MPICH MPI-IO & As part of the ExaHDF5 ECP project, the ALCF worked with Cray MPI-IO developers to merge the upstream ROMIO code into the downstream proprietary Cray MPICH MPI-IO, leveraging Cray’s extensive suite of IO performance tests and further tuning the algorithm. Cray is currently targeting its deployment in an experimental release.\\\hline
OpenHPC & An ECP ST staff member serves on the OpenHPC Technical Steering Committee as a Component Development representative.\\\hline
\end{tabular}
\caption{\label{table:externalproducts} External products to which ECP ST activities contribute. Participation in requirements, analysis, design and prototyping activities for third-party products is some of the most effective software work we can do.}
\end{table}