Skip to content

Commit

Permalink
Update to final V1.5
Browse files Browse the repository at this point in the history
  • Loading branch information
maherou committed Feb 1, 2019
1 parent 7725681 commit bfbdada
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 16 deletions.
Binary file modified ECP-ST-CAR.pdf
Binary file not shown.
34 changes: 24 additions & 10 deletions ECP-ST-CAR.tex
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

\documentclass{ecpreport-publicv1}
\usepackage{draftwatermark}
%\usepackage{draftwatermark}
\usepackage{wrapfig}
\usepackage{subfig}
\usepackage{xcolor,colortbl}
Expand Down Expand Up @@ -31,9 +31,14 @@
linkcolor=blue,
urlcolor=blue
}

%\usepackage{subcaption}

% Toggle between public and internal version of report.
% If publictrue is uncommented, the appendix is omitted and the title is changed to Internal. References to the appendix are not generated.
\newif\ifpublic
\publictrue % Comment the beginning of this line to enable the Internal version (with Appendix)


%%---------------------------------------------------------------------------%%
%% VARIABLES
%%---------------------------------------------------------------------------%%
Expand All @@ -44,13 +49,21 @@
\and Lois Curfman McInnes, Mathematical Libraries Lead
\and James Ahrens, Data \& Visualization Lead
\and J.~Robert Neely, Software Ecosystem \& Delivery Lead}
\title{ECP Software Technology Capability Assessment Report}
\ifpublic
\title{ECP Software Technology Capability Assessment Report--Public}
\else
\title{ECP Software Technology Capability Assessment Report--Internal}
\fi
%\date{\today}
\date{January 1, 2019}
\date{February 1, 2019}
%\wbs{2.3}
\id{ECP-RPT-ST-0001-2019}
\reportnum{ECP-RPT-ST-0001-2019}

\ifpublic
\id{ECP-RPT-ST-0001-2019--Public}
\reportnum{ECP-RPT-ST-0001-2019--Public}
\else
\id{ECP-RPT-ST-0001-2019--Internal}
\reportnum{ECP-RPT-ST-0001-2019--Internal}
\fi
\submitter{Michael A.~Heroux}

%\concurrence{Douglas Kothe}
Expand All @@ -72,7 +85,7 @@
\begin{revlog}

1.0 & July 1, 2018 & \textit{ECP ST Capability Assessment Report } \\\hline
1.5 & \today & New revision--DRAFT \\\hline
1.5 & February 1, 2019 & \textit{Second release} \\\hline
\end{revlog}

%%---------------------------------------------------------------------------%%
Expand Down Expand Up @@ -295,7 +308,8 @@ \section*{Acknowledgments}
%% APPENDIX
%%---------------------------------------------------------------------------%%
% The ECP ST CAR Appendix is kept in a private repo. It must be cloned/forked and be side-by-side with the ECP-ST-CAR-PUBLIC repo if the following line is uncommented.

\ifpublic
\else
\input{../ECP-ST-CAR-APPENDIX/appendix}

\fi
\end{document}
12 changes: 10 additions & 2 deletions Introduction.tex
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ \subsection{ECP Software Technology Approach}

To accelerate this transition, we need a greater commitment on the part of software component developers to provide reliable and portable software that users can consider to be part of the software ecosystem in much the same way users depend on MPI and compilers. At the same time, we must expect application developers to participate as clients and users of reusable components, using capabilities from components, transitioning away from (or keeping as a backup option) their own custom capabilities.

\subsubsection{The Extreme-scale Scientific Software Stack (E4S)}
\subsubsection{The Extreme-scale Scientific Software Stack (E4S)}\label{subsubsect:e4s}
On November 8, 2018, ECP ST released version 0.1 of the Extreme-scale Scientific Software Stack, E4S (\url{http://e4s.io}). E4S contains a collection of the software products to which ECP ST contributes. E4S will be the primary conduit for providing easy access to ECP ST capabilities for ECP and the broader community. E4S will also be the ECP ST vehicle for regression and integration testing across DOE pre-Exascale and Exascale systems.

\begin{figure}
Expand Down Expand Up @@ -106,7 +106,15 @@ \subsubsection{Software Development Kits}\label{subsubsect:sdks}

\paragraph{ECP ST SDKs}
As part of the delivery of ECP ST capabilities, we will establish and grow a collection of SDKs. The new layer of aggregation that SDKs represent are important for improving all aspects of product development and delivery. The communities that will emerge from SDK efforts will lead to better collaboration and higher quality products. Established community policies will provide a means to grow SDKs beyond ECP to include any relevant external effort. The meta-build systems (based on Spack) will play an important role in managing the complexity of building the ECP ST software stack, by providing a new layer where versioning, consistency and build options management can be addressed at a mid-scope, below the global build of ECP ST products.
Each ECP ST L3 (five of them) has funds for an SDK project from which we have identified a total of six SDKs and an at-large collection of remaining products that will be delivered outside of the SDK grouping. Section~\ref{subsubsect:ecosystem-sdk} provides an update on the progress in defining SDK groupings.
Each ECP ST L3 (five of them) has funds for an SDK project from which we have identified a total of six SDKs and an at-large collection of remaining products that will be delivered outside of the SDK grouping. Section~\ref{subsubsect:ecosystem-sdk} provides an update on the progress in defining SDK groupings. For visibility, we provide the same diagram in Figure~\ref{fig:sdk-definition1-0}.

\begin{figure}[htb]
\centering
\includegraphics[width=6.5in]{projects/2.3.5-Ecosystem/2.3.5.01-Ecosystem-SDK/SDKdefinition1}
\caption{\label{fig:sdk-definition1-0}The above graphic shows the breakdown of ECP ST products into 6 SDKs ( the first six columns). The rightmost column lists products that are not part of an SDK, but are part of Ecosystem group that will also be delivered as part of E4S. The colors denoted in the key map all of the ST products to the ST technical area they are part of. For example, the xSDK consists of products that are in the Math Libraries Technical area, plus TuckerMPI which is in the Ecosystem and Delivery technical area. Section~\ref{subsubsect:ecosystem-sdk} provides an update on the progress in defining SDK groupings.}
\end{figure}


%will identify and establish at least one SDK effort. Fortunately, we will be able to leverage an existing SDK in the Math Libraries sub-element to inform our broader efforts. This SDK, called the xSDK, has been in existence for several years and has proven the value of an SDK approach in its domain (Figure~\ref{fig:xsdk-diagram}).

%\begin{figure}
Expand Down
3 changes: 1 addition & 2 deletions Products.tex
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
\subsection{ECP ST Products}\label{subsect:products}
ECP ST efforts contribute to 92 software products in five technical areas (Table~\ref{table:wbs}). 34 of the 92 products are broadly used in the HPC community and require substantial investment and transformation in preparation for Exascale architectures. An additional 25 are important to some existing applications and typically represent new capabilities that enable new usage models for realizing the potential that Exascale platforms promise. The remaining products are in early development phases, addressing emerging challenges and opportunities that Exascale platforms present.
ECP ST efforts contribute to 91 software products in five technical areas (Table~\ref{table:wbs}). 34 of the 91 products are broadly used in the HPC community and require substantial investment and transformation in preparation for Exascale architectures. An additional 25 are important to some existing applications and typically represent new capabilities that enable new usage models for realizing the potential that Exascale platforms promise. The remaining products are in early development phases, addressing emerging challenges and opportunities that Exascale platforms present.

\begin{table}
\begin{tabular}{|l|l|l|}\hline
Expand All @@ -23,7 +23,6 @@ \subsection{ECP ST Products}\label{subsect:products}

BOLT & \url{https://github.com/pmodels/bolt} & Experimental\\\hline
Argobots & \url{https://github.com/pmodels/argobots} & Experimental\\\hline
DARMA & \url{https://github.com/darma-tasking} & Experimental\\\hline
Intel GEOPM & \url{https://geopm.github.io} & Experimental\\\hline
PaRSEC & \url{http://icl.utk.edu/parsec} & Experimental\\\hline
\end{tabular}
Expand Down
13 changes: 11 additions & 2 deletions abstract.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,16 @@

This \textit{ECP ST Capability Assessment Report (CAR)} provides an overview and assessment of current ECP ST capabilities and activities, giving stakeholders and the broader HPC community information that can be used to assess ECP ST progress and plan their own efforts accordingly. ECP ST leaders commit to updating this document on regular basis (targeting approximately every six months). Highlights from the report are presented here.

\textbf{Origin of the ECP ST CAR:} The CAR is a follow-on and expansion of the \textit{ECP Software Technology Gap Analysis}~\cite{Thakur2017GapAnalysis}. The CAR includes a gap analysis as well as a broader description of ECP ST efforts, capabilities and plans.
\textbf{What is new in CAR V1.5:} CAR V1.5 contains the following updates relative to CAR V1.0.
\begin{itemize}
\item The two-page summaries of each ECP L4 projects have been updated to reflect recent progress and next steps. See Section~\ref{sect:project-summaries}.
\item The Extreme-scale Scientific Software Stack (E4S) is introduced. The first release was November 8, 2018. E4S is the primary integration and delivery vehicle for ECP ST capabilities. See Section~\ref{subsubsect:e4s}.
\item The ECP ST SDK effort has defined its initial grouping into 6 product suites. See Section~\ref{subsubsect:sdks}.
\ifpublic
\else
\item ECP ST has embarked on planning and preparations for FY2020 and the anticipated transition to Critical Decision Phase 2. See Sections A and B in the Appendix.
\fi
\end{itemize}

\textbf{The Exascale Computing Project Software Technology (ECP ST) focus area represents the key bridge between Exascale systems and the scientists developing applications that will run on those platforms:} ECP ST efforts contribute to 89 software products (Section~\ref{subsect:products}) in five technical areas (Table~\ref{table:wbs}). 33 of the 89 products are broadly used in the HPC community and require substantial investment and transformation in preparation for Exascale architectures. An additional 23 are important to some existing applications and typically represent new capabilities that enable new usage models for realizing the potential that Exascale platforms promise. The remaining products are in early development phases, addressing emerging challenges and opportunities that Exascale platforms present.

Expand All @@ -20,7 +29,7 @@

\textbf{ECP ST Software Delivery mechanisms:} ECP ST delivers software capabilities to users via several mechanisms (Section~\ref{sect:deliverables}). Almost all products are delivered via source codes to at least some of their users. Each of the major DOE computing facilities provides direct support of some users for about 20 ECP ST products. About 10 products are available via vendor software stack and via binary distributions such as Linux distributions.

\textbf{ECP ST Project Restructuring:} ECP ST completed a significant restructuring in November 2017 (Section~\ref{subsect:ProjectRestructuring}). We reduced the number of technical areas from 8 to 5 and reduced the number of L4 projects significantly by simplifying the organization of ATDM projects. We introduced new projects for software development kits that are a key organizational feature for designing, testing and delivering our software. Finally, we introduced a new technical area (\ecosystem) that provides the critical capabilities we need for delivering a sustainable software ecosystem.
\textbf{ECP ST Project Restructuring:} ECP ST completed a significant restructuring in November 2017 (Section~\ref{subsect:ProjectRestructuring}). We reduced the number of technical areas from 8 to 5 and reduced the number of L4 projects significantly by simplifying the organization of ATDM projects. We introduced new projects for software development kits that are a key organizational feature for designing, testing and delivering our software. Finally, we introduced a new technical area (\ecosystem) that provides the critical capabilities we need for delivering a sustainable software ecosystem. ECP ST is in the process of further restructuring to prepare for the CD-2 phase of the project. Details will be provided in the CAR V2.0 in July 2019.

\textbf{ECP ST Project Overviews:} A significant portion of this report includes 2-page synopses of each ECP ST project (Section~\ref{sect:project-summaries}), including a project overview, key challenges, solution strategy, recent progress and next steps.

Expand Down

0 comments on commit bfbdada

Please sign in to comment.