Skip to content

mpiCASA.md - #315

Open
Graviton28 wants to merge 1 commit into
UNM-CARC:masterfrom
Graviton28:pr/casa-easley-hopper
Open

mpiCASA.md#315
Graviton28 wants to merge 1 commit into
UNM-CARC:masterfrom
Graviton28:pr/casa-easley-hopper

Conversation

@Graviton28

Copy link
Copy Markdown
Contributor

Rewrote mpiCASA.md from scratch. It was previously raw, unfinished draft notes: a fake placeholder path (/users/sbruzew/xena-scratch/casa-blah-blah/bin/casa), dead PBS ($PBS_NODEFILE), a nonexistent singleGPU partition, and unresolved rhetorical questions to self.

Investigated live on Easley. CASA 6.5.2 is genuinely installed and works, but hit a real infrastructure bug along the way:

module avail casa / module spider casa both report casa/6.5.2 as loadable ("This module can be loaded directly: module load casa/6.5.2"). Actually running module load casa/6.5.2 fails:

Lmod has detected the following error: These module(s) or extension(s) exist
but cannot be loaded as requested: "casa/6.5.2"

Re-checked with the cache disabled (module --ignore_cache avail casa) and there is currently no live modulefile for CASA at all — Lmod's cached spider index is stale and advertises a module that doesn't actually exist anymore. This is a known limitation, not a doc bug — flagged in the doc itself with a pointer to help@carc.unm.edu, same as how the unresolved simcov/hwloc issue was handled in #284.

The underlying CASA 6.5.2 software is still present and world-executable at a fixed path (/opt/local/casa/6.5.2/casa-6.5.2-26-py3.8/bin/), so the rewritten doc uses that direct path + alias instead of module load. Tested end-to-end on Easley via srun:

  • casa --nogui --log2term -c hello.py (1 task, debug partition) — ran a real Python script inside CASA, correct output.
  • mpicasa -n 2 casa --nogui --log2term -c hello.py (2 tasks, Slurm placed them on 2 separate nodes) — both ranks correctly executed the script. (There's a benign mpirun has exited ... exiting improperly message at the end even on success — CASA's script mode doesn't call MPI_Finalize() cleanly; documented this as expected, not a failure.)

Also replaced the fake singleGPU partition with Easley's real partitions (general, bigmem, h100, l40s, interactive, debug, scavenger — verified via sinfo), and PBS_NODEFILE with plain Slurm --ntasks.

Test plan

  • Confirmed module load casa/6.5.2 fails and diagnosed root cause (stale Lmod cache) on Easley
  • Confirmed direct-path casa binary runs (--version, and a real script via -c) on Easley via srun
  • Confirmed mpicasa -n 2 runs the script correctly across 2 nodes on Easley via srun
  • Verified real Easley partition list via sinfo

Previous content was raw, unfinished draft notes: a fake placeholder path
(/users/sbruzew/xena-scratch/casa-blah-blah/bin/casa), the dead PBS variable
$PBS_NODEFILE, a nonexistent "singleGPU" partition, and unresolved rhetorical
questions to self.

Investigated live on Easley: `module avail casa` / `module spider casa` both
claim casa/6.5.2 is loadable, but `module load casa/6.5.2` actually fails -
Lmod's cached spider index is stale and falsely advertises a module whose
modulefile no longer exists (confirmed with `module --ignore_cache avail casa`,
which finds nothing). This is a real CARC module-system gap, not something
fixable from the doc side; flagged for help@carc.unm.edu in the doc itself.

The underlying CASA 6.5.2 software is still installed and world-executable at
a fixed path, so the tutorial documents using that direct path with an alias
instead. Tested end-to-end on Easley via srun: both plain `casa --nogui
--log2term -c script.py` (1 task) and the MPI-parallel `mpicasa -n 2 casa ...`
wrapper (2 tasks, landed on 2 separate nodes) ran a real Python script inside
CASA and printed correct output. Replaced the fake singleGPU partition with
Easley's real partitions (general/bigmem/h100/l40s/interactive/debug/scavenger,
verified via sinfo) and PBS_NODEFILE with plain Slurm --ntasks.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@Graviton28
Graviton28 requested a review from gmfricke as a code owner August 4, 2026 02:40
@Graviton28
Graviton28 marked this pull request as draft August 4, 2026 02:43
@Graviton28
Graviton28 marked this pull request as ready for review August 4, 2026 04:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant