Your lab already has a super­computer. It hasn’t been turned on.

Squadron packages your code, ships it to every idle workstation in your lab, and runs your jobs in parallel. No Docker, Slurm, or AWS invoices, just the GPUs you already paid for.

You stay in your shell. The cluster does the plumbing.

fig. 01 / your shell
~/research/llama-finetune
~/research/llama-finetune ❯
fig. 02 / your lab
chen-lab
0/8 running
  • mark-ubuntu1× 4090idle
  • jesse-work1× 4090idle
  • priya-desktop1× 3090idle
  • luca-archlinux1× 4080idle
  • becky-home2× 4090idle
  • lab-shared-014× a6000idle
  • lab-shared-024× a6000idle
  • kai-ubuntu1× 3080idle
running
0
jobs
queued
0
waiting
cloud bill
$0
this run

Squadron packages your repo against a base image, builds the container for you, and pushes it to a private registry. Your colleagues’ idle machines pull and run. Logs and artifacts come back to you.

The infrastructure you don’t write.

01
Dockerfile authoring
containerization is automatic
02
Slurm scripts
no scheduler to learn
03
AWS / GCP invoices
use the GPUs you bought
04
Port forwarding
we handle all the routing
05
Manual artifact wrangling
outputs sync home automatically
06
Reproducibility prayers
every job records its exact image hash

Nothing to manage.

i.

Idle-aware scheduling.

The daemon yields the moment a user touches the keyboard, mouse, or any compute-heavy process they care about.

ii.

Container-native, but invisible.

Pick a base image and your job runs the same on every machine. Dependencies stay isolated and runs stay reproducible, with no setup to manage.

iii.

Datasets on demand.

Volumes mount as ordinary filesystems inside the job, fetching files only when read and then caching for future reads. Open a TB-sized dataset the same way on every machine, without syncing or copying anything up front.

iv.

Live logs, live artifacts.

Tail stdout from any job in any terminal. Outputs upload to S3 as they're written.

What it looks like, in practice.

Start from an example

Clone a working starter project and run it locally before shipping it to the cluster.

squadron examples clone hello-world

Queue a job

Package your project directory into a container and run it on any idle workstation.

squadron project upload && squadron job queue

Share data across jobs

Upload a dataset once, then reference it from any project manifest.

squadron volume upload ./datasets

Watch it run

Tail logs and outputs from your terminal while the job runs on someone else's machine across the lab.

squadron job tail --latest

Put your lab’s
idle hardware to work.