Getting Started on ARCC MedicineBow
A practical onboarding guide for ASCEND / ARID researchers
Preface
This book serves as an onboarding document for NSF ASCEND Engine performers doing work on MedicineBow, the University of Wyoming’s high-performance computing (HPC) cluster, run by the Advanced Research Computing Center (ARCC).
This is not an official ARCC document
It’s a community onboarding guide. It can drift out of date, and ARCC can change policy at any time. When in doubt, the official wiki and arcc-help@uwyo.edu are authoritative. Corrections are very welcome.
Quick orientation
- Request access through the ASCEND PIs. Ask your project PI to add you, or email Josh Day (josh@rallypoint1.com) or Virginia Iglesias (virginia@innosphere.org) to request a new project. (See Getting access.)
- Nothing on the cluster is backed up. Not home, not project, not scratch. There are snapshots, but they live on the same array. (See Where your data lives.)
- Never run real computation on a login node. Log in, then hand work to the scheduler (Slurm) or grab an interactive session. (See Why a scheduler exists.)
- Every job must name your project account with
--account=<project>. (See Anatomy of a batch job.) - The partition (hardware pool) and QOS (quality-of-service tier) you choose decide how long you wait and how big you can go. Short test runs and long simulations belong in different queues (Partitions and QOS on MedicineBow, Queue times: which partition for what).
How the book is organized
The chapters run in the order you’ll need them:
- Getting started on the cluster — what an HPC cluster is, how to request an account, and first login through the portal and SSH keys.
- Linux essentials — the minimum shell you need: moving around, editing files, and keeping work alive across a dropped connection with
tmux. - Storage and moving data — the three filesystems (and the fact that nothing is backed up), the
/project/cowyspace shared across ASCEND projects, and Globus,rsync, andrclonefor transfers. - Software: modules, conda, and containers — loading software with Lmod, using conda without filling your home directory, and running containers with Apptainer.
- Running jobs with Slurm — why a scheduler exists, the anatomy of a batch job, and asking for the right resources.
- Partitions, QOS, and queue times — which hardware and service tier to choose, measured wait times, and how job priority is actually computed here.
- Monitoring, arrays, and interactive jobs — watching and diagnosing jobs, job arrays, interactive and GPU sessions, and the parallelism ladder.
- Preemption, checkpointing, and failures — surviving the condo model (shared, investor-owned hardware that can reclaim your job) and walltime limits, and reading the wreckage when a job fails.
- Reference — a command cheat sheet, a symptom-to-fix troubleshooting index, and a glossary.