What is dstack?¶
dstack
is a unified control plane for GPU provisioning and orchestration that works with any GPU cloud, Kubernetes, or on-prem clusters.
It streamlines development, training, and inference, and is compatible with any hardware, open-source tools, and frameworks.
Hardware¶
dstack
supports NVIDIA
, AMD
, TPU
, Intel Gaudi
, and Tenstorrent
accelerators out of the box.
How does it work?¶
1. Set up the server¶
Before using
dstack
, ensure you've installed the server, or signed up for dstack Sky .
2. Define configurations¶
dstack
supports the following configurations:
- Dev environments — for interactive development using a desktop IDE
- Tasks — for scheduling jobs, incl. distributed ones (or running web apps)
- Services — for deploying models (or web apps)
- Fleets — for managing cloud and on-prem clusters
- Volumes — for managing network volumes (to persist data)
- Gateways — for publishing services with a custom domain and HTTPS
Configuration can be defined as YAML files within your repo.
3. Apply configurations¶
Apply the configuration either via the dstack apply
CLI command (or through a programmatic API.)
dstack
automatically manages infrastructure provisioning and job scheduling, while also handling auto-scaling,
port-forwarding, ingress, and more.
Where do I start?
- Proceed to installation
- See quickstart
- Browse examples
- Join Discord