Instructor Notes
Timing
| Episode | Teaching | Exercises |
|---|---|---|
| A shared software stack | 15 | 10 |
| Finding and loading a module | 20 | 20 |
| The EESSI client container | 15 | 15 |
Teaching is 50 minutes and exercises are 45 minutes. If the room is
short on time, keep the CPU-line challenge and the
Python 3.13.5 check. Skip the 2023.06 load.
Source
The environment-modules section of the deck, from the heading
“Environment modules” through the Lmod command table, is
course-module-fundamentals-of-hpc/slides/fundamentals-of-hpc.org
in https://github.com/HaoZeke/introduction-to-supercomputing.
Branch: fix/slides-fundamentals-source
Commit: 2ebb95294418d5831143e393e93b294af39464b1
The course-cluster note on that deck is the slide “This course runs
on a course cluster built like Snellius”. The version strings
Python/3.13.5-GCCcore-14.3.0 and
Python/3.11.5-GCCcore-13.2.0, the init-script transcript,
and the two EESSI_* variables are from the software episode
this lesson replaces. They are not printed on that slide.
EasyBuild stays a pointer. Book: https://hpceb.rgoswami.me/. Sources: https://github.com/HaoZeke/what-easybuild-is-doing.
What to skip
Do not open EasyBuild. Do not search the EESSI tree for
QCG-PilotJob. Do not download the client image if everyone
already has a cluster login. The container episode is then a reading of
the two variables and the CPU line.
Common mistakes
-
module loadof a second stack in a shell that already has one.module purgecomes first. - Copying a neighbour’s CPU directory into a script. The init script picks the path.
-
module spider QCG-PilotJobin the container, then a private install. The tool is a site module. The tab has the load line. - A long Python script on the login node.
python3 --versionis the command that belongs there. -
module load 2025and a secondsourceof the init script in the same shell. - Expecting
sbatchinside the client container.
Prep checklist
What to collect
One python3 --version line that reads
Python 3.13.5, and one CPU line from the init script. The
CPU name will differ between laptops. That difference is the point.
Finding and loading a module
The EESSI client container
What to skip
If everyone is already on a cluster, do not spend the time downloading the image. The stack is already mounted. Read the two variable names, show one CPU line, and return to the modules.