Skip to content

Commit

Permalink
Add starting point for SC24 tutorials
Browse files Browse the repository at this point in the history
  • Loading branch information
ocaisa committed Apr 11, 2024
1 parent 157041e commit 22599b7
Show file tree
Hide file tree
Showing 15 changed files with 857 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,15 @@ jobs:
with:
name: CVMFS-ISC24-tutorial
path: isc24/CernVM-FS/build/main.pdf
- name: Compile LaTeX document (CernVM-FS)
uses: xu-cheng/latex-action@f1ca82cbed861b3534e2997dd584944f55b884ed
with:
working_directory: sc24/EESSI
root_file: main.tex
args: "-output-directory=build -pdf"
latexmk_shell_escape: true
- name: Store produce PDFs (EESSI)
uses: actions/upload-artifact@v2
with:
name: EESSI-SC24-tutorial
path: sc24/EESSI/build/main.pdf
2 changes: 2 additions & 0 deletions sc24/EESSI/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
all:
pdflatex main.tex
19 changes: 19 additions & 0 deletions sc24/EESSI/abstract.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
What if there was a way to avoid having to install a broad range of scientific software from scratch on every HPC
cluster or cloud instance you use or maintain, without compromising on performance?

Installing scientific software for supercomputers is known to be a tedious and time-consuming task. Especially as the
HPC user community becomes more diverse, computational science expands rapidly, the diversity of system architectures
increases the application software stack continues to deepen. Simultaneously, we see a surge in interest in cloud
computing for scientific computing. Delivering optimised software installations and providing access to these
installations in a reliable, user-friendly, and reproducible way is a highly non-trivial task that affects application
developers, HPC user support teams, and the users themselves.

This tutorial aims to address these challenges by providing the attendees with the knowledge to stream optimised
scientific software. For this, the tutorial introduces European Environment for Scientific Software Installations
(\emph{EESSI}), a collaboration between various European HPC sites \& industry partners, with the common goal of
creating a shared repository of scientific software installations that can be used on a variety of systems, regardless
of which flavor/version of Linux distribution or processor architecture is used, or whether it’s a full size HPC
cluster, a cloud environment or a personal workstation.

We cover the usage of EESSI, different ways to accessing EESSI, how to add software to EESSI, and highlight some more
advanced features. We will also show how to engage with the community and contribute to the project.
18 changes: 18 additions & 0 deletions sc24/EESSI/attendance.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Based on attendance at previous EESSI and EasyBuild events, including the yearly EasyBuild User Meetings (over 30
attendees in the last physical edition in 2023, close to 100 in 2021 and 2022 in an online setting) and previous
related tutorials (PRACE-VI-SEEM 2017 Spring School with 25-30 attendees, a free online EasyBuild tutorial in June'20
with about 100 attendees, the half-day ISC'21 tutorial with over 25 attendees, and the in-person (half-day) ISC'22
EasyBuild tutorial with about 20 attendees, and an online EESSI tutorial in Dec'23 had over 130 registrations), we
anticipate this EESSI tutorial to be well attended with 20-50 attendees.

%KH I would've gone with 50/25/25, but this works too (maybe better even)
% MG: This was just a blind guess ;)
%KH seems about right I think, we want to keep it beginner-oriented, 25% advanced may be too much... maybe 50/30/20 is less awkward?
% I love how 'awkward' is such an awkward word to type... :D (no, haven't had beer yet)

% KH: Markus, I'm signing off for tonight... I'll be around tomorrow, definitely in the morning (have a student intern to keep busy in the afternoon, but I'll be around on Slack)
%MG: Yea, I will also stop working soon

% KH: do we need anything from Maxime? It's probably good to tell him that now, since he'll only be around after 1-2pm tomorrow.
%MG: For the submission, we'll need a short bio (some text) For Alan and the two of us, I will copy from last year unless I receive an update.
% KH I already asked him for a bio. And a picture. I'll mail that too. => DONE
12 changes: 12 additions & 0 deletions sc24/EESSI/audience.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
This tutorial is intended for
\begin{itemize}
\item End users who want to empower themselves to use a uniform software stack without compromising on
performance, on top of what is provided centrally by the HPC support team;
\item System managers, administrators and user support teams, responsible for the operational aspects of HPC systems and concerned about
hardware optimised scientific software installations;
% \item user support teams who need to provide a consistent central software stack for end users, and want to do so in
% a reproducible way;
\item Cloud and CI users, who want to use a common stack of optimised scientific software installations;
\item System manufacturers and integrators interested in state-of-the-art software installation tools, who want to
leverage the collective expertise incorporated in EasyBuild and EESSI.
\end{itemize}
92 changes: 92 additions & 0 deletions sc24/EESSI/cv-alan.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
%===============================================================================
% Alan
%===============================================================================

\subsection{CV for Alan \'O Cais}

\begin{description}
\item[] Centre Européen de Calcul Atomique et Moléculaire (CECAM)
\item[] Avenue de Forel 2, BCH 3103
\item[] 1015 Lausanne, Switzerland
\item[] [email protected]
\end{description}

\subsection*{Education}

\begin{description}
\item[] Ph.D Theoretical Physics, 2005, Trinity College Dublin (Ireland)
\item[] M.Sc. High Performance Computing, 2002, Trinity College Dublin (Ireland)
\item[] B.Sc. Theoretical Physics, 2001, Trinity College Dublin (Ireland)
\end{description}

\subsection*{Professional Experience}

\begin{description}
\item[] 2022 - present: Scientific Software Engineer with CECAM
\item[] 2016 - 2021: E-CAM Centre of Excellence Software Manager at J\"ulich Supercomputing Centre (Germany)
\item[] 2010 - 2016: Research Fellow at J\"ulich Supercomputing Centre (Germany)
\item[] 2008 - 2010: Scientific Coordinator at The Cyprus Institute (Cyprus)
\item[] 2006 - 2008: Research Fellow at University of Adelaide (Australia)
\item[] 2005 - 2006: Research Fellow at Trinity College Dublin (Ireland)
\end{description}

\subsection*{Tools and Projects}

\begin{itemize}
\item[] \emph{MultiXscale EuroHPC Centre-of-Excellence}
\\steering committee member, technical manager, and work package leader (2023--present)
\\{\small{\url{https://www.multixscale.eu}}}
\item[] \emph{European Environment for Scientific Software Installations (EESSI)}
\\active contributor (2020--present)
\\{\small{\url{https://eessi.io} - \url{https://eessi.io/docs}}}
\item[] \emph{EasyBuild: (scientific) software build and installation framework}
\\developer \& co-maintainer (2013--present)
\\{\small{\url{https://easybuild.io} - \url{https://docs.easybuild.io}}}
\end{itemize}

\subsection*{Conferences, Workshops and Tutorials}
\begin{itemize}
\item[] \emph{Streaming Optimised Scientific Software: an Introduction to EESSI}, online tutorial in context of
MultiXscale EuroHPC CoE, co-organisor, December 2023
\\{\small{\url{https://github.com/EESSI/docs/tree/main/talks/20231205-Introduction-to-EESSI-CASTIEL2}}}
\item[] \emph{Best Practices for CernVM-FS in HPC}, online tutorial in context of MultiXscale EuroHPC CoE, co-organisor, December 2023
\\{\small{\url{https://multixscale.github.io/cvmfs-tutorial-hpc-best-practices}}}
\item[] \emph{Maintaining a Modern Scientific Software Stack Made Easy with EasyBuild} tutorial at ISC'21, June 2021 (\url{https://easybuild.io/tutorial})
\item[] Organiser of the first \emph{European HPC Training Stakeholder Workshop} (in coordination with the European Commission)
\item[] Instructor at all E-CAM Centre of Excellence \emph{\href{https://www.e-cam2020.eu/events?tribe_paged=1&tribe_event_display=list&tribe-bar-date=2015-10-01&tribe-bar-search=Extended}{Extended Software Development Workshops}}
\item[] Local organizer of the \emph{\href{https://github.com/easybuilders/easybuild/wiki/2nd-EasyBuild-User-Meeting}{2nd EasyBuild User Meeting (EUM'17)}}. J\"ulich. Germany.
\item[]Invited instructor at PRACE seasonal training workshops:
\begin{itemize}
\item[] PRACE Autumn School in HPC Programming Techniques, Athens 25-28 November 2014: Lectures on Profiling and Optimization and Benchmarking
\item[] PRACE Winter School, Tel Aviv 10-13 February 2014: Lectures on Profiling and Optimization and Benchmarking
\item[] Joint HP-SEE, LinkSCEEM-2 and PRACE HPC Summer Training, Athens 13-15 July 2011: Lectures on Profiling and Optimization and Benchmarking
\end{itemize}
\end{itemize}

\subsection*{Selected Publications}

\paragraph{Conference Papers}

\begin{itemize}
\item[] A. \'O Cais, P. Steinbach, \emph{Expanding user communities with HPC Carpentry}. Proceedings of the Workshop on HPC Education and Training for Emerging Technologies at ISC2019, Journal of Computational Science Education. 11. 21-25.
\end{itemize}

\begin{itemize}
\item[] D. Alvarez, A. O'Cais, M. Geimer, K. Hoste, \emph{Scientific Software Management in Real Life: Deployment of EasyBuild on a Large Scale System}. Proceedings of the 3rd International Workshop on HPC User Support Tools, Salt Lake City, USA, 2016.
\end{itemize}

\paragraph{Journal Papers}

\begin{itemize}
\item[] B. Dröge, V. Holanda Rusu, K. Hoste, C. van Leeuwen, A. O'Cais, T. Röblitz, \emph{{EESSI}: {A cross‐platform
ready‐to‐use optimised scientific software stack}}. Software: Practice and Experience, 53(1):176-210, Jan. 2022,
\url{https://doi.org/10.1002/spe.3075}
\item[] MJT Oliveira, N Papior, Y Pouillon, V Blum, E Artacho,\dots, \emph{The {CECAM} electronic structure library and the modular software development paradigm}.
J Chem Phys. 2020;153:024117
\item[] M.S. Mahbub, (Adelaide U. \& Rajshahi U.), Alan O'Cais, Waseem Kamleh, B.G. Lasscock, Derek B. Leinweber, Anthony G. Williams, \emph{Isolating Excited States of the Nucleon in Lattice QCD}, Phys.Rev.D80:054507,2009.
\item[] M.S. Mahbub, (Adelaide U. \& Rajshahi U.) , Alan O'Cais, Waseem Kamleh, Ben G. Lasscock, Derek B. Leinweber, Anthony G. Williams, (Adelaide U.), \emph{Isolating the Roper Resonance in Lattice QCD}, Phys.Lett.B679:418-422,2009.
\item[] Alexandrou, C., et al., \emph{Evaluation of fermion loops applied to the calculation of the n' mass and the nucleon scalar and electromagnetic form factors}, Computer Physics Communications 183.6 (2012): 1215-1224.
\item[] J. Foley, K. Jimmy Juge, A. O'Cais, M. Peardon, S.M. Ryan and J. I. Skullerud, \emph{Practical all-to-all propagators for lattice QCD}, Comput. Phys. Commun. 172 (2005) 145.
\end{itemize}

\newpage
106 changes: 106 additions & 0 deletions sc24/EESSI/cv-kenneth.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
%===============================================================================
% Kenneth
%===============================================================================

\subsection{CV for Kenneth Hoste}
\begin{description}
\item[] HPC-UGent - Ghent University
\item[] Krijgslaan 281 - building S9, 9000 Ghent (Belgium)
\item[] [email protected]
\end{description}

\subsection*{Education}
\begin{description}
\item[] PhD in Engineering: Computer Science, 2010, Ghent University (Belgium)
\item[] Masters in Computer Science, 2005, Ghent University (Belgium)
\end{description}

\subsection*{Professional Experience}
\begin{description}
\item[] 2010--present: HPC System Administrator, Ghent University (Belgium)
\end{description}

\subsection*{Tools and Projects}

\begin{itemize}
\item[] \emph{MultiXscale EuroHPC Centre-of-Excellence}
\\project partner and work package leader (2023--present)
\\{\small{\url{https://www.multixscale.eu}}}
\item[] \emph{European Environment for Scientific Software Installations (EESSI)}
\\active contributor (2020--present)
\\{\small{\url{https://eessi.io} - \url{https://eessi.io/docs}}}
\item[] \emph{EasyBuild: (scientific) software build and installation framework}
\\lead developer \& release manager (2010--present)
\\{\small{\url{https://easybuild.io} - \url{https://docs.easybuild.io}}}
\end{itemize}

\subsection*{Conferences, Workshops and Tutorials}

\begin{itemize}

\item[] \emph{Streaming Optimised Scientific Software: an Introduction to EESSI}, online tutorial in context of
MultiXscale EuroHPC CoE, co-organisor, December 2023
\\{\small{\url{https://github.com/EESSI/docs/tree/main/talks/20231205-Introduction-to-EESSI-CASTIEL2}}}
\item[] \emph{Best Practices for CernVM-FS in HPC}, online tutorial in context of MultiXscale EuroHPC CoE, co-organisor
and presenter, December 2023
\\{\small{\url{https://multixscale.github.io/cvmfs-tutorial-hpc-best-practices}}}
\item[] \emph{Introduction to CernVM-FS}, online tutorial, co-presenter, January 2021
\\{\small{\url{https://cvmfs-contrib.github.io/cvmfs-tutorial-2021}}}
\item[] \emph{Maintaining a Modern Scientific Software Stack Made Easy with EasyBuild} tutorial at ISC'21 + ISC'22,
co-organisor, {\small{\url{https://tutorial.easybuild.io/2022-isc22}}}
\item[] (co-)organisation of \emph{EasyBuild User Meeting} workshops in
\href{https://github.com/easybuilders/easybuild/wiki/1st-EasyBuild-User-Meeting}{Ghent (2016)},
\href{https://github.com/easybuilders/easybuild/wiki/2nd-EasyBuild-User-Meeting}{J\"ulich (2017)},
\href{https://github.com/easybuilders/easybuild/wiki/3rd-EasyBuild-User-Meeting}{Amsterdam (2018)},
\href{https://github.com/easybuilders/easybuild/wiki/4th-EasyBuild-User-Meeting}{Louvain-la-Neuve (2019)},
\href{https://github.com/easybuilders/easybuild/wiki/5th-EasyBuild-User-Meeting}{Barcelona (2020)},
online (\href{https://easybuild.io/eum21}{2021} + \href{https://easybuild.io/eum22}{2022}),
and \href{https://easybuild.io/eum23}{London (2023)},
{\small{\url{https://easybuild.io/eum}}}

\item[] co-organisaton of FOSDEM devroom on \emph{HPC, Big Data \& Data Science} (2014, 2016--2023),
\url{https://archive.fosdem.org/2023/schedule/track/hpc_big_data_and_data_science}
\item[] Online EasyBuild tutorial, June 2020, \url{https://tutorial.easybuild.io/2020-06-isc20/}
\item[] (co-)organisation of \emph{Getting Scientific Software Installed} Birds-of-a-Feather sessions at \href{http://2013.isc-hpc.com/isc13_ap/presentationdetails.php?t=contribution&o=2108&a=select&ra=eventdetails}{ISC'13}, \href{https://github.com/easybuilders/easybuild/wiki/SC13-BoF-session}{SC'13}, \href{https://github.com/easybuilders/easybuild/wiki/ISC'14-BoF-session}{ISC'14}, \href{https://github.com/easybuilders/easybuild/wiki/SC14-BoF-session}{SC'14}, \href{https://github.com/easybuilders/easybuild/wiki/SC15-BoF-session}{SC'15}, \href{https://github.com/easybuilders/easybuild/wiki/SC18-BoF-session-Getting-Scientific-Software-Installed}{SC'18}, \href{https://github.com/easybuilders/easybuild/wiki/SC19-BoF-session-Getting-Scientific-Software-Installed}{SC'19}
\item[] \emph{Modern Scientific Software Management using EasyBuild \& co}, invited tutorial at PRACE-VI-SEEM 2017 Spring School, Nicosia (Cyprus), April 2017 (\url{https://events.prace-ri.eu/event/601} - \href{https://users.ugent.be/~kehoste/EasyBuild_20170425_PRACE_Spring_School.pdf}{presentation} - recording \href{https://www.youtube.com/watch?v=5WNcTHRyDxk}{part 1}, \href{https://www.youtube.com/watch?v=fiv_p87w9XM}{part 2})
\item[] \emph{Introduction to EasyBuild: Getting Scientific Software Installed With Ease}, invited tutorial at HPC Advisory Council 2016, Lugano (Switzerland), March 2016 (\url{https://www.hpcadvisorycouncil.com/events/2016/swiss-workshop} - presentation \href{https://users.ugent.be/~kehoste/EasyBuild_HPCAC_intro_20160323.pdf}{part 1}, \href{https://users.ugent.be/~kehoste/EasyBuild_HPCAC_start_20160323.pdf}{part 2} - recording \href{https://www.youtube.com/watch?v=cL_UcPIIxzE}{part 1}, \href{https://www.youtube.com/watch?v=yo_KwlDtg0w}{part 2})
\item[] (co-)organisation of 11 EasyBuild hackathons across Europe + Austin (US) (2011--2016)
\item[] co-organisation of the \href{http://sc14.supercomputing.org/schedule/event_detail-evid=wksp152.html}{1st International Workshop on \emph{HPC User Support Tools} (HUST-14)} at SC'14, New Orleans (USA), Nov. 2014
%\item[] \emph{5 Years of Getting Scientific Software Installed Using}, presentation at HPC Knowledge Portal conference 2017, San Sebastian (Spain), June 2017 (\url{http://www.hpckp.org/index.php/conference/2017})

\end{itemize}

\subsection*{Selected Publications}

\paragraph{Conference Papers}

\begin{itemize}

\item[] P. Forai, K. Hoste, G. Peretti-Pezzi, B. Bode, \emph{Making Scientific Software Installation Reproducible On Cray Systems Using EasyBuild}. Cray User Group (CUG) 2016, London, UK, 2016.

\item[] D. Alvarez, A. O'Cais, M. Geimer, K. Hoste, \emph{Scientific Software Management in Real Life: Deployment of EasyBuild on a Large Scale System}. Proceedings of the 3rd International Workshop on HPC User Support Tools, Salt Lake City, USA, 2016.

\item[] M. Geimer, K. Hoste, R. McLay,
\emph{Modern Scientific Software Management Using EasyBuild and Lmod}.
Proceedings of the 1st International Workshop on HPC User Support Tools, New Orleans, USA, 2014.

\item[] K. Hoste, J. Timmerman, A. Georges, S. De Weirdt, \emph{EasyBuild: building software with ease}. High Performance Computing, Networking, Storage and Analysis (SC Companion 2012), Salt Lake City, USA, 2012.

\item[] K. Hoste, L. Eeckhout, \emph{COLE: Compiler Optimization Level Exploration}. Proceedings of the 6th International Symposium on Code Generation and Optimization (CGO 2008), Boston, USA, 2008.


\end{itemize}

\paragraph{Journal Articles}

\begin{itemize}

\item[] B. Dröge, V. Holanda Rusu, K. Hoste, C. van Leeuwen, A. O'Cais, T. Röblitz, \emph{{EESSI}: {A cross‐platform
ready‐to‐use optimised scientific software stack}}. Software: Practice and Experience, 53(1):176-210, Jan. 2023,
\url{https://doi.org/10.1002/spe.3075}

\item[] K. Hoste, L. Eeckhout, \emph{A Methodology for Analyzing Commercial Processor Performance Numbers}. IEEE Computer, 42(10):70-76, Oct. 2009.

\item[] K. Hoste, L. Eeckhout, \emph{Microarchitecture-Independent Workload Characterization}. IEEE Micro, 27(3):63-72, May 2007.

\end{itemize}
Loading

0 comments on commit 22599b7

Please sign in to comment.