Problem Description
Spur's scontrol does not implement show hostnames [NODELIST] or the hostlist / hostnamestr variants that Slurm provides.
Why it matters: these are the idiomatic way distributed jobs discover their nodes. A very common line in launch scripts is:
MASTER_ADDR=$(scontrol show hostnames "$SLURM_JOB_NODELIST" | head -n1)
Without these subcommands, Slurm rendezvous scripts (torchrun and similar) don't work unchanged on spur.
Expected:
hostnames — expand a hostlist to one hostname per line
hostlist — collapse hostnames into a compact bracketed expression
hostnamestr — expand to a single comma-separated line
They should work outside an allocation and while the controller is down, and fall
back to $SLURM_JOB_NODELIST / $SLURM_NODELIST when no argument is given, as
Slurm does.
Environment
- OS: Ubuntu 22.04 LTS
- CPU: AMD EPYC (x86_64 server-class)
- GPU: AMD Instinct MI300X
- ROCm Version: N/A — feature gap in the spur CLI, independent of the ROCm runtime
- Component: spur
Steps to Reproduce
scontrol show hostnames node[1-4] # not implemented
scontrol show hostlist node1,node2 # not implemented
scontrol show hostnamestr node[1-4] # not implemented
Problem Description
Spur's
scontroldoes not implementshow hostnames [NODELIST]or thehostlist/hostnamestrvariants that Slurm provides.Why it matters: these are the idiomatic way distributed jobs discover their nodes. A very common line in launch scripts is:
Without these subcommands, Slurm rendezvous scripts (torchrun and similar) don't work unchanged on spur.
Expected:
hostnames— expand a hostlist to one hostname per linehostlist— collapse hostnames into a compact bracketed expressionhostnamestr— expand to a single comma-separated lineThey should work outside an allocation and while the controller is down, and fall
back to
$SLURM_JOB_NODELIST/$SLURM_NODELISTwhen no argument is given, asSlurm does.
Environment
Steps to Reproduce