Content from Customizing HPC Carpentry Material
Last updated on 2026-02-20 | Edit this page
Overview
Questions
- Where are the files I need to edit?
- What parameters should I set?
- What might my cluster’s admins help me with?
- When should I make a new snippet? How?
Objectives
- Explain how to customize the site for your cluster
- Instruct how to build and serve the site
- Demonstrate how to include pieces of code, output, and custom teaching material
Introduction
Every compute cluster is a little different, and HPC Carpentry works best when the lesson materials reflect those differences. We use the Workbench built-in tools and R Markdown to render this customizxed content, structured with maintainability in mind. We want to support edits without breaking synchronization with the upstream repositories: you have good ideas, and we want to incorporate better preactices!
Challenge 1: Can you do it?
What is the output of this command?
R
paste("This", "new", "lesson", "looks", "good")
OUTPUT
[1] "This new lesson looks good"
Challenge 2: how do you nest solutions within challenge blocks?
You can add a line with at least three colons and a
solution tag.
Figures
You can use standard markdown for static figures with the following syntax:
{alt='alt text for accessibility purposes'}
Callout sections can highlight information.
They are sometimes used to emphasise particularly important points but are also used in some lessons to present “asides”: content that is not central to the narrative of the lesson, e.g. by providing the answer to a commonly-asked question.
Math
One of our episodes contains \(\LaTeX\) equations when describing how to create dynamic reports with {knitr}, so we now use mathjax to describe this:
$\alpha = \dfrac{1}{(1 - \beta)^2}$ becomes: \(\alpha = \dfrac{1}{(1 - \beta)^2}\)
Cool, right?
- Use
.mdfiles for episodes when you want static content - Use
.Rmdfiles for episodes when you need to generate output - Run
sandpaper::check_lesson()to identify any issues with your lesson - Run
sandpaper::build_lesson()to preview your lesson locally
Content from HPC Carpentry Curriculum
Last updated on 2026-02-20 | Edit this page
Overview
Questions
Objectives
Content from Workshop Narrative: the Amdahl Executable
Last updated on 2026-02-20 | Edit this page
Overview
Questions
- What is the central example in an HPC Carpentry workshop?
- What does the Amdahl program do?
- Why do we need
amdahlwhen there are lots of parallel applications out there? - How do I install the amdahl package?
Objectives
After this episode, Instructors will be able to…
- Describe the story we tell to guide learners through an HPC Carpentry workshop.
- Describe what the Amdahl executable does.
- Install the Amdahl executable.
- HPC Carpentry workshops are centered on an exploration of Amdahl’s law of scaling, illustrating the diminishing gains of increasingly parallelisation.
- Amdahl is a Python executable that runs for a specified amount of time but does nothing else.
-
amdahlis in the Python package index (pip install amdahl) as well as the EESSI virtual filesystem -
amdahldepends onmpi4pyand a working MPI installation!
Content from HPC Carpentry Curriculum
Last updated on 2026-02-20 | Edit this page
Overview
Questions
Objectives
Content from HPC Carpentry Curriculum
Last updated on 2026-02-20 | Edit this page
Overview
Questions
Objectives
Content from HPC Carpentry Curriculum
Last updated on 2026-02-20 | Edit this page
What do we intend to convey through our workshops? What tools do we use? What do we cover, and intentionally not cover?