Skip to content

Commit

Permalink
Merge pull request #87 from xorJane/patch-1
Browse files Browse the repository at this point in the history
Update 2024-08-13-llnl-workshop-blog-post.md
  • Loading branch information
reid-a authored Aug 14, 2024
2 parents 8b87c88 + ce137a7 commit cd00c96
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions _posts/2024/08/2024-08-13-llnl-workshop-blog-post.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,32 +11,33 @@ tags: ["HPC Carpentry", "Lesson Program Implementation"]
## HPC Carpentry at LLNL

In the first week of June, 2024, instructors from [HPC Carpentry][hpcc]
taught our full workflow workshop for the first time, not once but twice,
over a four-day stint at the Lawrence Livermore National Laboratory.
taught our full workflow workshop for the first time. Over a four-day
stint at Lawrence Livermore National Laboratory, we delivered this
content not once, but twice!

It was immensely rewarding to see all this material come together in
one place, and I think we served our learners pretty well, and learned
a few lessons relevant to future workshops. Traveling to teach in person,
while not without hiccups, was extremely worthwhile.
one place. Traveling to teach in person, while not without hiccups, was
extremely worthwhile. We believe we served our learners pretty well, and
we learned a few lessons relevant to future workshops.

### Workshop Structure

Each workshop ran over two days. On the first day, we did the [Unix Shell
intro][shell] lesson from Software Carpentry in the morning, and our own
[HPC Intro][intro] lesson in the afternoon. On the second day, we did a
variant of the [workflow lesson][work], adapted for the Maestro workflow
tool (rather than Snakemake), because it is developed and widely used at LLNL.
tool (rather than Snakemake), because it is developed and used at LLNL.

The instructor team consisted of Andrew Reid and Trevor Keller from
the HPC Carpentry steering committee, and Jane Herriman from LLNL,
along with helpers from the LLNL community.

While split-terminal tools exist, we used vanilla [tmux][tmux] with two
terminals attached to the same session. This allowed the instructors to type on
their own laptop, with the lesson webpage alongside, while learners followed
along on the enhanced terminal displayed at the front of the room. Note:
to "scroll up" in `tmux`, press <kbd>Ctrl</kbd>+<kbd>b</kbd>, <kbd>[</kbd>,
then arrow-key around.
their own laptop while referencing the lesson webpage and selectively sharing
the terminal. Learners followed along on the enhanced terminal displayed at the
front of the room. Note: to "scroll up" in `tmux`, press
<kbd>Ctrl</kbd>+<kbd>b</kbd>, <kbd>[</kbd>, then arrow-key around.

#### Maestro

Expand All @@ -55,14 +56,14 @@ jobs.
Learners had a range of backgrounds, from undergraduate bio-informatics
students to experienced Linux HPC users. The lessons generally went
at a slightly faster pace than expected, without leaving anyone
behind. This was in part because access to the LLNL system was by means
of pre-authorized RSA tokens, removing a lot of the friction from the
initial connection process that has been time-consuming in other versions
of the workshop. The instructors live-coded plenty of mistakes, opening
behind. This was in part because access to LLNL's system `Ruby` was by means
of pre-authorized RSA tokens, removing a lot of the friction
from the initial connection process that has been time-consuming in other
versions of the workshop. The instructors live-coded plenty of mistakes, opening
discussions on some interesting tangential topics. LLNL runs a pool of "login
nodes," rather than a single machine, which made for interesting, early
discussion of networked filesystems. The sheer number of machines also made the
output of `sinfo` tricky to comprehend at-a-glance, which is awesome.
nodes" per HPC system, rather than a single machine, which made for interesting,
early discussion of networked filesystems. The sheer number of nodes also made
the output of `sinfo` tricky to comprehend at-a-glance, which is awesome.

### Lesson Feedback

Expand All @@ -77,7 +78,7 @@ missed. The Workflow lesson differs in this respect from the Shell and
HPC intro lessons, where later steps can better stand on their own.

The solution to this, which we already started to implement for the
second workshop, was to have a shared on-line notepad with "checkpoint"
second workshop, was to have a shared online notepad with "checkpoint"
versions of the file, to which learners can refer if they fall behind,
with helpers bridging the content gap for them. Also, LLNL supports and
uses the [`give`][give] tool, allowing users to easily pass files around:
Expand Down

0 comments on commit cd00c96

Please sign in to comment.