Quickstart
This is the path from a fresh install to a job actually running somewhere.
Before you start
- A GitHub account
- Linux (tested on Ubuntu and Arch, but likely works elsewhere; see Installation for details)
- An account on the dashboard, with an organization. The first time you sign in, account setup either creates an org or joins you to one via an invite code from your admin (generated on the Members page).
1. Register a machine
On the machine you want to share, install the CLI and daemon:
curl -fsSL https://cycleswap.dev/install.sh | shThen open Machines in the dashboard, click Add Machine, and copy the one-time registration code. Run:
cycle machine registerAfter that, the daemon will pick up queued jobs whenever the machine goes idle. If you're not sure what "idle" means here, the Daemon page spells out the exact thresholds.
2. Upload a project
The simplest start is to clone the hello-world example:
cycle examples clone hello-world && cd hello-worldIf you already have code you want to run, project init creates a .cycleswap/ config in your project directory and walks you through the prompts:
cycle project initEither way, run it locally before uploading. project test uses the same container the daemon will use, so most problems will surface on your machine instead of on someone else's:
cycle project testOnce that's clean, upload:
cycle project uploadEach upload becomes a new project version.
3. Submit a job
cycle job queue --latestThe job sits in the queue until a registered machine goes idle, then runs there. To follow along as it runs:
cycle job tail --latestThe Jobs page in the dashboard shows status and logs too, if you'd rather not stay in the terminal.
What to read next
- Adapting Your Code: the two changes your program needs so it can resume after reassignment
- Stable Diffusion DDP tutorial: a full walkthrough with a real training workload