Skip to content

Commit

Permalink
Merge pull request #35 from EESSI/aoc_update2
Browse files Browse the repository at this point in the history
Address some comments from meetings
  • Loading branch information
boegel authored Dec 17, 2024
2 parents 40e991b + 106d033 commit ada15a1
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 45 deletions.
42 changes: 18 additions & 24 deletions isc25/EESSI/description.tex
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
\subsection*{Overview and Goals}

Application developers, HPC sites, and end users %around the world
spend significant amounts of time on optimised software installations.
spend significant amounts of time on optimising software installations.
Much of this effort is repeatedly duplicated, not just \emph{between}
individuals but also by the individuals themselves as they reinstall
the software they need for all of the computational platforms they have access to.
Expand All @@ -26,27 +26,21 @@ \subsection*{Overview and Goals}
% Hence, an EESSI tutorial is very relevant to ISC'25 attendees as this tool helps relieve these burdens and fosters
% collaboration.

The \textbf{European Environment for Scientific Software Installations
(EESSI)}\footnote{\href{https://eessi.io}{https://eessi.io}} project is a collaborative project
between different partners in the HPC community supported by the MultiXscale EuroHPC Centre of Excellence to build a
The \textbf{European Environment for Scientific Software Installations (EESSI)}\footnote{\href{https://eessi.io}{https://eessi.io}}
project is a collaborative project
between different partners in the HPC community (and supported by the MultiXscale EuroHPC Centre of
Excellence\footnote{\href{https://multixscale.eu}{https://multixscale.eu}}) to build a
common stack of optimised scientific software installations for everything from laptops to big HPC systems and cloud
infrastructures. The project uses EasyBuild to install software on top of a compatibility layer, and uses CernVM-FS to
distribute the software installations to client systems.

EasyBuild is used by well over 100 HPC sites worldwide (incl. JSC, CSCS, the Digital Research Alliance of Canada, LUMI,
\ldots),
has over 125 unique contributors on a yearly basis,
and an active Slack channel with over 950 members.
It has reached a critical mass with a welcoming and active community guaranteeing continued development and support, and
a growing user community.
%It has reached critical mass, a point where a large user base means more features and software being added regularly, with an accelerated adoption rate, and a welcoming and engaging community.
%Attendance at the yearly EasyBuild User Meetings has been growing steadily, with close to 100 attendees at the 7th (virtual) edition in Jan'22.
%As such, we strongly believe that EasyBuild, and the community behind it, will have a positive impact on the attendees' work.
% The tutorial content is designed to help with getting started quickly and benefit from EasyBuild right after the conference.
%The tutorial content will be designed to help the attendees getting started with the tool, so they can immediately benefit from it after the conference.

EESSI is an initiative built on the foundations of the EasyBuild community, and goes one step further by providing a
truly uniform software stack. It already has a wide spectrum of collaborators despite being a relatively young project. EESSI won the HPCwire Readers’ Choice Awards 2024 as Best HPC Programming Tool or Technology. \footnote{\href{https://www.hpcwire.com/2024-readers-editors-choice-best-hpc-programming-tool-or-technology/}{https://www.hpcwire.com/2024-readers-editors-choice-best-hpc-programming-tool-or-technology/}}
infrastructures. The project uses EasyBuild\footnote{\href{https://easybuild.io}{https://easybuild.io}} to install
software on top of a compatibility layer, and leverages CernVM-FS\footnote{\href{https://cernvm.cern.ch/fs}{https://cernvm.cern.ch/fs}} to
distribute the software installations to client systems. In 2024, it was selected as winner of the HPCwire Readers’ Choice Awards
in the "Best HPC Programming Tool or Technology"
category.\footnote{\href{https://www.eessi.io/docs/blog/2024/11/18/hpcwire-readers-choice-awards-2024-for-eessi/}{https://www.eessi.io/docs/blog/2024/11/18/hpcwire-readers-choice-awards-2024-for-eessi/}}

EESSI is an initiative built on the foundations of the EasyBuild community, which is used by well over 100 HPC sites worldwide
(incl. JSC, CSCS, the Digital Research Alliance of Canada, LUMI, \ldots), and goes one step further by providing a
truly uniform software stack. It already has a wide spectrum of collaborators including SURF, BSC, Ghent University, etc.,
despite being a relatively young project.

EESSI is motivated by the observation that the landscape of computational science is changing in various ways.
Additional families of general-purpose microprocessors including Arm 64-bit (aarch64) and RISC-V on top of th
Expand Down Expand Up @@ -75,9 +69,9 @@ \subsection*{Overview and Goals}
project consists of 3 layers, which are constructed by leveraging various open source software projects:
% the filesystem layer to distribute the software stack; the compatibility layer to level the ground across different client operating systems; the software layer to run optimized applications and provided their dependencies.
\begin{itemize}
\item The filesystem layer uses CernVM-FS to distribute the EESSI software stack to client systems
\item The compatibility layer levels the ground across different (versions of) the Linux operating system (OS)
of client systems that use the software installations provided by EESSI. It consists of a limited set of libraries
\item The filesystem layer uses CernVM-FS to distribute the EESSI software stack to client systems.
\item The compatibility layer levels the ground across the various versions of the Linux operating system
of the clients so that they can use the software installations provided by EESSI. It consists of a limited set of libraries
and tools that are installed in a non-standard filesystem location (a "prefix"), which were built from source for
the supported CPU families using Gentoo Prefix.
\item The user-facing layer of EESSI is called the software layer, which contains the actual scientific software applications
Expand Down
35 changes: 18 additions & 17 deletions isc25/EESSI/handson.tex
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
A significant portion of the tutorial time is used for guided examples and hands-on,
as they are fundamental to exposing the benefits of EESSI.
This highlights the practical nature of the tutorial.
A significant portion of the tutorial is used for guided examples and hands-on,
which are fundamental to exposing the benefits of EESSI and highlight the practical nature of the tutorial.
Before each example session the theoretical concepts are explained through a consistent set of presentation materials.
The guided examples will be carried out in a pre-configured environment on virtual machines in the Cloud that can be
accessed by the
Guided examples will be carried out in a pre-configured environment on virtual machines in the Cloud that can be
accessed by
attendees from their laptops using SSH.
The examples cover accessing EESSI in different ways such as native, in a production HPC setup as well as inside
containers, the use cases of EESSI, adding support for new software to EESSI, troubleshooting, GPU support, selected
The examples cover accessing EESSI in various ways (such as in a production HPC setup or via
containers), the use cases of EESSI, adding support for new software to EESSI, troubleshooting, GPU support, selected
advanced features, and how to contribute to EESSI.
% Each example builds on the previous one and hence also showcases a typical workflow.
The guided examples will happen mostly in the proximity of a coffee break allowing the attendees to continue
a bit during the coffee break should they want to and ensuring the maximum benefit from the tutorial.
%The guided examples will happen in the proximity of a coffee break allowing the attendees to continue
%during the coffee break should they want to and ensuring the maximum benefit from the tutorial.

The tutorial is based on previous tutorials archived at
\url{https://github.com/EESSI/docs/tree/main/talks/20231205-Introduction-to-EESSI-CASTIEL2},
but will be updated with new developments in EESSI and EasyBuild.
This tutorial will also be made available on that site, and will also refer to the EESSI documentation on
\url{https://www.eessi.io/docs}.
It should be noted that even though this tutorial has never been presented at ISC, all the authors have extensive
experience in other tutorials and workshops, both inside and outside the ISC and SC conference series. Additionally,
they engaged in other collaborative efforts within the EESSI and EasyBuild community. Providing coherent and streamlined
The tutorial is based on previous online tutorials from December 2023
\href{https://raw.githubusercontent.com/eessi/docs/main/talks/20231205-Introduction-to-EESSI-CASTIEL2/20231205-Introduction-to-EESSI-CASTIEL2.pdf}{"An introduction to EESSI"} ($\sim60$ live attendees, see \href{https://www.youtube.com/watch?v=KAYI9oKFLxA}{YouTube for recording}) and
\href{https://raw.githubusercontent.com/multixscale/cvmfs-tutorial-hpc-best-practices/main/files/Best-Practices-for-CernVM-FS-in-HPC-20231204.pdf}{"Best Practices for CernVM-FS in HPC"} ($\sim130$ live attendees, see \href{https://www.youtube.com/watch?v=L0Mmy7NBXDU}{YouTube for recording}),
but will be updated with new developments in EESSI and the CernVM-FS infrastructure.
The tutorial material will be integrated in the EESSI documentation available at
\href{https://www.eessi.io/docs}{https://www.eessi.io/docs} (similar to \href{https://tutorial.easybuild.io/}{https://tutorial.easybuild.io/}).

It should be noted that though this tutorial has never been presented at ISC, all the authors have extensive
experience in other tutorials and workshops, both inside and outside the ISC conference series.
They are also engaged in other collaborative training efforts within the EESSI and EasyBuild community. Providing coherent and streamlined
tutorial is well within the authors' experience.

% This tutorial was presented in the half-day format at ISC'22
Expand Down
2 changes: 1 addition & 1 deletion isc25/EESSI/outline.tex
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ \subsubsection*{Half-day format, 3.5 hours of tutorial content}
\item [11:00-11:30] \emph{(30min coffee break)}
\item [11:30-12:00] \emph{(30min)} Building software on top of EESSI - hands-on with EESSI-extend
\item [12:00-12:15] \emph{(15min)} GPU support, incl. hands-on demo
\item [12:15-12:30] \emph{(10min)} Alternative access mechanisms: containers, cvmfsexec (15min) - hands-on demo
\item [12:15-12:30] \emph{(10min)} Alternative access mechanisms: containers, cvmfsexec - hands-on demo
\item [12:40-12:50] \emph{(20min)} Performance tuning (host injections, startup perf by tuning CernVM-FS)
\item [12:50-13:00] \emph{(10min)} Q\&A + closing remarks

Expand Down
3 changes: 2 additions & 1 deletion isc25/EESSI/prerequisites.tex
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Attendees wishing to participate in the guided examples are expected to use their
own notebook computers with a working SSH client.
own notebook computers with a working SSH client, and have some familiarity with
the Linux shell environment.

Detailed information on how to prepare for this tutorial will be provided
through the tutorial website, similar to
Expand Down
4 changes: 2 additions & 2 deletions isc25/EESSI/travelsupport.tex
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
The tutorial presenters request free passes for their tutorial,
as well as travel support for two presenters, one from Spain, one from Belgium.
The tutorial presenters request 3 complimentary tutorial passes for their tutorial,
as well as travel support for two presenters from Europe.

0 comments on commit ada15a1

Please sign in to comment.