Skip to content

Commit bfbfdc1

Browse files
lguerardclaude
andcommitted
fix(cluster): πŸ› raise segment/prepare mem_mb, do_3D underestimates it
A do_3D nuclei run still hit a real 32 GB SLURM OOM even after tile sizing was taught to respect host RAM: the tile's 24 GiB GPU-VRAM budget was already the binding constraint (below the 32 GB host grant), and the 20x cellpose_memory_factor judged it safe there -- but do_3D's actual host-RAM use ran well past that estimate. rtx4090 nodes have ~1 TB RAM and the QOS caps at 4 TB account-wide, so 128/256/384 GB across retries is a wide, affordable safety margin while do_3D's real memory factor gets measured properly instead of guessed. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent d9316e2 commit bfbfdc1

1 file changed

Lines changed: 12 additions & 2 deletions

File tree

β€Žworkflow/profile/slurm/config.yamlβ€Ž

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ set-resources:
7474
# equal to segment's mem_mb below: lower and tiles come out needlessly
7575
# small; higher and the sizer budgets against more host RAM than segment
7676
# will actually get, undoing the point of the host-RAM check.
77-
mem_mb: "attempt * 32000"
77+
mem_mb: "attempt * 128000"
7878
runtime: 120
7979
segment:
8080
# one GPU per job β€” this is what spreads Cellpose across GPUs.
@@ -89,7 +89,17 @@ set-resources:
8989
# The old "a tile used ~1G" note predates tile_shape: "auto", which sizes
9090
# tiles against the real GPU and makes them far bigger. If you raise
9191
# this, raise prepare's mem_mb above to match (see its comment).
92-
mem_mb: "attempt * 32000"
92+
#
93+
# 128 GB base (256/384 GB on retry) is a wide safety margin, not a tight
94+
# estimate: a do_3D tile that `auto_tile_shape_cellpose`'s 20x
95+
# cellpose_memory_factor judged safe within a 24 GiB GPU budget still hit
96+
# a real 32 GB host OOM, so that heuristic underestimates do_3D's actual
97+
# host-RAM use by more than expected. rtx4090 nodes have ~1 TB RAM
98+
# (~800 GB usable) and the QOS caps at 4 TB account-wide, so this has
99+
# plenty of room -- it buys time until do_3D gets a properly measured
100+
# memory factor (e.g. from `seff` on a job that completes) instead of a
101+
# guess. ``ponytail:`` tighten this once real peak-RSS numbers exist.
102+
mem_mb: "attempt * 128000"
93103
cpus_per_task: 4
94104
runtime: 360 # 6 hours β€” must match the QOS, NOT 120 (=2h β†’ killed early)
95105
merge:

0 commit comments

Comments
Β (0)