# Contents

GPU Sandboxes provide full GPU passthrough, with one dedicated GPU assigned to each sandbox via VFIO. Every sandbox gets direct access to physical GPU hardware with no shared tenancy, so GPU-bound workloads run without contention from other sandboxes.

Dedicated GPU access

Reinforcement learning, model training, and inference workloads need direct, predictable access to GPU hardware. Shared or virtualized GPU access introduces contention and inconsistent performance, and it weakens the isolation boundary between tenants running on the same device.

GPU Sandboxes assign a physical GPU to a single sandbox using VFIO passthrough. The workload sees the real device rather than a shared or emulated one, which gives consistent performance and hardware-level isolation between sandboxes.

Supported GPU types:

  • NVIDIA H100

  • NVIDIA H200

  • NVIDIA RTX Pro 6000

  • NVIDIA RTX 4090

  • NVIDIA RTX 5090

How it works

  • One GPU per sandbox: Each sandbox is assigned a dedicated physical GPU, not a slice shared with other workloads.

  • VFIO passthrough: The GPU is passed through directly to the sandbox VM, so the workload accesses the hardware natively.

  • Hardware isolation: Because the GPU is not shared, one sandbox cannot observe or interfere with another's GPU workload.

What you can do

  • Reinforcement learning: Run RL training loops on dedicated hardware with consistent, uncontended GPU performance.

  • Model training: Train models inside an isolated sandbox with direct access to the full GPU.

  • Inference workloads: Serve inference on real hardware without the variability of shared GPU access.

Get Started

GPU Sandboxes are available to all Daytona organizations. Read the GPU sandboxes documentation to get started.

Create GPU Sandbox

1from daytona import Daytona, CreateSandboxFromSnapshotParams
2
3daytona = Daytona()
4sandbox = daytona.create(
5 CreateSandboxFromSnapshotParams(
6 snapshot="daytona-gpu",
7 auto_delete_interval=0
8 ),
9)

Create GPU Sandbox with Custom Resources

1from daytona import Daytona, CreateSandboxFromImageParams, Image, Resources, GpuType
2
3daytona = Daytona()
4sandbox = daytona.create(
5 CreateSandboxFromImageParams(
6 image=Image.debian_slim("3.12"),
7 auto_delete_interval=0,
8 resources=Resources(
9 gpu=1,
10 gpu_type=[GpuType.H100, GpuType.RTX_PRO_6000],
11 ),
12 )
13)