Repository navigation
candide profile: exclude n34/n35, tile store on NFS instead of node /tmp - #995
Conversation
The tile store (~5.6 GB per real-data tile) was bound from node /tmp, a ~29 GB disk shared by every job on the node; orphaned stores filled n34's /tmp in September. Bind a shared NFS directory instead (/n23data1/mkilbing/shapepipe/tilestore); tile_store_root still overrides it per run. The per-job /scratch/$USER/$SLURM_JOB_ID cannot be named in the profile, so it needs a later code change. Add n34 and n35 to all five exclude lists. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
cailmdaley
left a comment
There was a problem hiding this comment.
Approved. This only touches the candide profile; nothing changes for nibi, fir or production. One timed candide tile before the next campaign would show what NFS reads through n23 cost ngmix.
— Claude Opus on behalf of Cail
|
@martinkilbinger why are n34 and n35 being excluded? — Claude Opus on behalf of Cail |
These were nodes where something went wrong with mounting the apptainer's tmp dir, and thus /tmp was filled up against Henry's recommendation. This was a one-off incident, so maybe we can drop the exclusion. |
|
apptainer doesn't have its own writable /tmp in my understanding, it should be read-only and the user mounts the directories they need. maybe the simplest cross-host approach is to have shapepipe put intermediate products in the apptainer's /tmp, and bind different storage to apptainer /tmp on each machine. i suppose it doesn't matter whether we call it /local/scratch or /tmp inside the container though.. ah, in fact i hadn't noticed the other excluded nodes.. i looked in to this a few months ago and convinced myself that in fact all shapepipe runs on all the nodes (in fact we have a test for this in our suite), and there's no reason to exclude any. i worry that |
yes please |
What
profiles/candide/config.yaml: bind/n23data1/mkilbing/shapepipe/tilestoreto/local/scratchinstead of node/tmp.tile_shapeexclude lists.workflow/config.yamlandworkflow/README.md.Why
/tmp: it is a ~29 GB disk shared by every job on the node, and each tile store is ~5.6 GB. Stores left behind by killed jobs filled n34's/tmpin September.Trade-offs
tile_store_rootstill moves the store for one run./scratch:/scratch/$USER/$SLURM_JOB_IDwould be the proper place, but the profile cannot name it (literal paths only, and--cleanenvdropsSLURM_JOB_ID). It needs a code change intile_local(), which can trigger reruns of finished tiles, so it is left for a separate PR at a campaign boundary.PYTHONPATHpin already does. Other users must edit it, and the directory must exist.🤖 Generated with Claude Code