--- title: "Virtual Machines" description: >- TIR Virtual Machines are full-OS compute environments with root access, a dedicated kernel, and hardware-level isolation — available on GPU, CPU, and Private Cluster configurations. displayed_sidebar: tirSideBar --- # Virtual Machines TIR Virtual Machines (VMs) are **full operating system environments**. Unlike container-based Instances, TIR VMs give you a dedicated Linux kernel, complete root access, and hardware-level isolation. VMs are available on **GPU**, **CPU**, and **Private Cluster** configurations — making them ideal for GPU-accelerated workloads, OS-level customization, custom kernel modules, and workloads that require stronger compute isolation. --- ## What Can You Do with a TIR VM? | Capability | Description | |-----------|-------------| | **GPU acceleration** | Run NVIDIA GPU workloads with full driver control and custom kernel modules | | **Full root access** | Install any package, service, or driver without restrictions | | **Custom kernel modules** | Load NVIDIA drivers, eBPF programs, custom filesystems | | **Startup automation** | Run scripts on every boot using the built-in startup script runner | | **Live SSH key sync** | Add or rotate SSH keys without restarting the VM | | **Persistent workspace disk** | A dedicated OS disk that survives start/stop cycles | | **Mount datasets** | Attach large dataset volumes directly into the VM filesystem | --- ## VMs vs Instances — Which Should You Use? | | Instance (Container) | Virtual Machine | |---|---|---| | **Underlying technology** | Linux container (namespace + cgroup) | Full hardware-virtualized VM | | **Kernel** | Shared host kernel | Dedicated guest kernel | | **Root access** | Limited | Full root | | **Custom kernel modules** | Not supported | Supported | | **Boot time** | Seconds | ~2–3 minutes (full OS boot) | | **Best for** | ML notebooks, JupyterLab, fast iteration | Custom drivers, HPC, OS customization, stronger isolation | :::tip When to choose a VM Choose a VM when you need GPU access with full driver control, need to install custom NVIDIA drivers, run system-level daemons (e.g., a monitoring agent), configure the network stack, or when your team requires a traditional server-like experience with SSH access to a stable IP. ::: --- ## Quick Start Ready to launch your first VM? [Create a Virtual Machine →](/docs/tir/VirtualMachines/create-vm) --- ## Explore | Guide | Description | |-------|-------------| | [Create a VM](/docs/tir/VirtualMachines/create-vm) | Step-by-step guide to launch and connect to a VM | | [Connect via SSH](/docs/tir/VirtualMachines/vm-connect) | How to SSH into your VM and manage SSH keys | | [Features](/docs/tir/VirtualMachines/vm-features) | Storage, startup scripts, datasets, monitoring and more | | [Billing](/docs/tir/VirtualMachines/vm-billing) | Pricing model and cost estimation | ---