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