Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add starting point for SC24 tutorials #18

Merged
merged 13 commits into from
Apr 15, 2024
18 changes: 15 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Compile LaTeX document (EESSI)
uses: xu-cheng/latex-action@f1ca82cbed861b3534e2997dd584944f55b884ed
with:
Expand All @@ -15,7 +15,7 @@ jobs:
args: "-output-directory=build -pdf"
latexmk_shell_escape: true
- name: Store produce PDFs (EESSI)
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: EESSI-ISC24-tutorial
path: isc24/EESSI/build/main.pdf
Expand All @@ -27,7 +27,19 @@ jobs:
args: "-output-directory=build -pdf"
latexmk_shell_escape: true
- name: Store produce PDFs (CernVM-FS)
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: CVMFS-ISC24-tutorial
path: isc24/CernVM-FS/build/main.pdf
- name: Compile LaTeX document (EESSI, SC24)
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, SC24)
uses: actions/upload-artifact@v4
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
18 changes: 18 additions & 0 deletions sc24/EESSI/abstract.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Can we avoid having to install a broad range of scientific software from scratch on every HPC cluster or
cloud instance we use without compromising on performance?

Installing scientific software for supercomputers is typically a tedious, time-consuming task (especially as the
HPC user community becomes more diverse, computational science expands, system architecture diversity increases, the
application software stack deepens and interest in cloud computing for scientific research surges).
Delivering optimised software installations, and providing access to them reliably and reproducibly,
is a highly non-trivial task impacting application developers, HPC user support, and users themselves.

This tutorial will show attendees how they can stream optimized scientific software instead.
The tutorial introduces the European Environment for Scientific Software Installations (\emph{EESSI}), a collaboration
between European HPC sites \& industry partners, with the common goal of creating a shared repository of scientific
software installations usable on a variety of systems, regardless of Linux flavour or processor architecture, or
whether it's a full size HPC cluster, the cloud, or a desktop.

We cover the usage of EESSI, different access methods, adding software to EESSI, and highlight some advanced features.
We also show how to engage with the community and contribute back.

20 changes: 20 additions & 0 deletions sc24/EESSI/attendance.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
\subsection*{Expected attendance}

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
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