Slurm Compatibility#
Spur is drop-in compatible with Slurm’s command-line interface, so existing job scripts, submission wrappers, and monitoring tools work without modification. This page explains how the client dispatches Slurm commands and lists the native Spur verb for each one.
How Dispatch Works#
spur is a single multi-call binary. It decides which subcommand to run from
argv[0] — the name it was invoked as. Run it as spur <command> and it
rewrites the arguments so the subcommand parser sees its canonical name; invoke it
through a symlink named sbatch and it runs the sbatch command directly.
The installer creates the Slurm-named symlinks. To set them up by hand, link each
Slurm command name to spur:
cd $(dirname $(which spur))
for cmd in sbatch srun squeue scancel sinfo sacct scontrol; do
ln -sf spur $cmd
done
Once the symlinks exist, sbatch job.sh and spur submit job.sh are
equivalent. The native spur verbs are convenience aliases; the Slurm names
work directly.
Command Map#
Native Spur verb |
Slurm command |
Purpose |
|---|---|---|
|
|
Submit a batch job script |
|
|
Run a command or launch a job step |
|
|
Allocate an interactive session |
|
|
View the job queue |
|
|
Cancel jobs |
|
|
Show cluster and node information |
|
|
Show accounting history |
|
|
Manage accounts, users, and QOS |
|
|
Show and update jobs, nodes, and partitions |
|
|
Show the priority breakdown for pending jobs |
|
|
Show fair-share information |
|
|
Show statistics for running jobs |
|
|
Show scheduler diagnostics |
|
|
Generate usage reports |
|
|
Attach to a running job’s I/O |
|
|
Manage recurring cron-style jobs |
|
|
Monitor node health |
Note
Slurm command names work directly once the symlinks are in place. The native
spur verbs are aliases for the same commands and are interchangeable with
them.
Behavioral Differences#
The commands accept Slurm syntax, but a few flags and behaviors differ or are not yet functional. See Migrating from Slurm for the full list of behavioral differences and current limitations.