diff --git a/isc25/EESSI/description.tex b/isc25/EESSI/description.tex index ac1180f..d388a2b 100644 --- a/isc25/EESSI/description.tex +++ b/isc25/EESSI/description.tex @@ -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. @@ -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 @@ -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 diff --git a/isc25/EESSI/handson.tex b/isc25/EESSI/handson.tex index 63b7005..76cbd60 100644 --- a/isc25/EESSI/handson.tex +++ b/isc25/EESSI/handson.tex @@ -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 diff --git a/isc25/EESSI/outline.tex b/isc25/EESSI/outline.tex index e97ab60..b5d443d 100644 --- a/isc25/EESSI/outline.tex +++ b/isc25/EESSI/outline.tex @@ -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 diff --git a/isc25/EESSI/prerequisites.tex b/isc25/EESSI/prerequisites.tex index 12a9e52..d228f8d 100644 --- a/isc25/EESSI/prerequisites.tex +++ b/isc25/EESSI/prerequisites.tex @@ -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 diff --git a/isc25/EESSI/travelsupport.tex b/isc25/EESSI/travelsupport.tex index 30adf3b..7a0fbb2 100644 --- a/isc25/EESSI/travelsupport.tex +++ b/isc25/EESSI/travelsupport.tex @@ -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.