Skip to content

ROCm/spur

Repository files navigation

Spur

CI E2E Rust License

An AI-native job scheduler written in Rust. Drop-in compatible with Slurm's CLI, REST API, and C FFI while providing WireGuard mesh networking, GPU-first scheduling, and modern state management.

Highlights

  • 🔌 Slurm compatible — your existing scripts, tools, and muscle memory work unchanged
  • 🔲 GPU-first scheduling — first-class GPU support for job scheduling
  • 💾 Raft-based state — all state survives restarts; no external database required
  • ⚙️ Written in Rust — single static binary per component, fast builds, safe concurrency
  • 🔒 WireGuard mesh networking — tunnelled cluster communication out of the box

Install

curl -fsSL https://raw.githubusercontent.com/ROCm/spur/main/install.sh | bash
export PATH="$HOME/.local/bin:$PATH"

Try it locally. Spin up a single-node cluster to see Spur in action:

spurctld -D --state-dir /tmp/spur-state          # start controller
spurd -D --controller http://localhost:6817      # start agent in a new terminal
spur run -- echo "hello from $(hostname)"        # run a command
spur queue                                       # check the queue

For production and multi-node deployments, see the deployment guide.

Documentation

The full documentation covers quickstart, deployment, and development. Whether you're evaluating Spur or running it in production, that's the best place to start.

Getting Help

If you are stuck on anything or have found a bug, please feel free to open an issue and we'll do our best to help.

Building & Contributing

See developer/building for build instructions and project layout, and developer/contributing for contribution guidelines. PRs are welcome.

License

Licensed under the Apache License 2.0. See LICENSE for details.

About

spur your compute

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages