Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Supported Slurm Model

This page makes the hpc-compose Slurm boundary explicit. It is a tool for compiling one Compose-like application into one Slurm allocation with one or more containerized srun steps. It is not a general frontend for the full Slurm command surface.

First-class support

These capabilities are modeled, validated, and intentionally supported by the planner, renderer, and tracked-job workflow.

AreaSupport
Allocation modelOne Slurm allocation per application
Submission flowvalidate, inspect, preflight, prepare, render, submit, submit --watch
Tracked job workflowstatus, stats, logs, cancel, artifacts, clean, cache inspection/pruning
Top-level Slurm fieldsjob_name, partition, account, qos, time, nodes, ntasks, ntasks_per_node, cpus_per_task, mem, gres, gpus, constraint, output, error, chdir
Service step fieldsnodes, ntasks, ntasks_per_node, cpus_per_task, gres, gpus
Multi-node modelSingle-node jobs and constrained multi-node runs with at most one distributed service spanning the allocation
Runtime orchestrationdepends_on, readiness checks, service failure policies, primary-node helper placement
Container workflowRemote images, local .sqsh images, x-enroot.prepare, shared cache handling
Job trackingScheduler state via squeue/sacct, step stats via sstat, tracked logs, runtime state, metrics, artifacts, resume metadata

Raw pass-through

These capabilities are usable, but hpc-compose does not model or validate their semantics beyond passing them through to Slurm.

MechanismWhat it allows
x-slurm.submit_argsRaw #SBATCH ... lines for site-specific flags such as mail settings, reservations, or other submit-time options
services.<name>.x-slurm.extra_srun_argsRaw srun arguments for site-specific launch flags such as MPI or exclusivity settings
Existing reservationsJoining an already-created reservation through raw submit args is supported as pass-through

Pass-through is appropriate when a site-specific flag is useful but does not justify a first-class schema field. It is not a guarantee that hpc-compose understands the operational consequences of that flag.

Unsupported or out of scope

These capabilities are intentionally outside the product seam.

AreaStatus
Admin-plane Slurm managementOut of scope
sacctmgr account administrationOut of scope
Reservation creation or lifecycle managementOut of scope
Federation / multi-cluster controlOut of scope
Generic scontrol mutationOut of scope
Broad cluster inspection tools such as a full sinfo / sprio / sreport frontendOut of scope
Arbitrary multi-node orchestration or partial-node service placementNot supported in v1
Heterogeneous jobs and job arrays as first-class workflow conceptsNot supported in v1
Compose build, ports, custom networks, restart, deployNot supported

Non-goals

hpc-compose should not grow into a generic Slurm administration layer. In particular, it will not broaden into sacctmgr, reservation management, federation control, or generic scontrol mutation. Those are real Slurm features, but they do not fit the “one application, one allocation, tracked runtime workflow” seam this tool is built around.