KVM stands for Kernel-based Virtual Machine. It's Linux's built-in hardware virtualization layer, a part of the kernel that lets you run full virtual machines, each with their own kernel and operating system, on a single physical host.
When a VPS provider says their service is "KVM-based," they mean each customer's VPS is a full virtual machine. You get:
- A real virtualized Linux (or Windows) kernel, you can swap it, recompile it, load custom modules.
- Real allocated RAM and CPU cores, what's listed is what you get, no shared-overcommit surprises.
- Real virtualized network interfaces, you can run anything that talks to a network card, including odd protocols and userspace networking.
- Real virtualized disks, formattable, partitionable, you can install whatever filesystem you want.
The trade-off versus container-based virtualization (OpenVZ, LXC): KVM uses more RAM per VM (the guest kernel itself takes ~100 MB) and starts slower (seconds vs milliseconds). For a long-running VPS that you treat as "your server," this is invisible, you boot it once.
How it compares to other virtualization types
| Type | Isolation | Performance overhead | OS flexibility | Common use |
|---|---|---|---|---|
| KVM (full virt) | Strong | Low (hardware-assisted) | Any OS | VPS hosting, dev VMs |
| OpenVZ (container) | Weak (shared kernel) | Near-zero | Linux only, fixed kernel | Budget VPS |
| LXC / Docker (container) | Weak (shared kernel) | Near-zero | Linux only, fixed kernel | App packaging |
| VMware ESXi (full virt) | Strong | Low | Any OS | Enterprise data center |
| Hyper-V (full virt) | Strong | Low | Any OS | Windows-host data center |
KVM is the default for modern Linux-host VPS providers because it gives the closest experience to a physical server while running well on commodity hardware.
Hardware acceleration
KVM requires CPU virtualization extensions. Intel VT-x or AMD-V, which all modern server CPUs have. This is what makes KVM "hardware-assisted" rather than software emulation (which would be slow). The host's kernel + the CPU instruction set together do the virtualization work; the result is a guest VM that runs at near-native speed for most workloads.
For CPU-bound workloads (compile jobs, video encoding) you'll see 1-5% overhead vs bare metal. For network or disk I/O, the overhead depends on the host's drivers and storage stack, modern KVM with VirtIO drivers is within a few percent of bare metal there too.
When you'd care
You care that your VPS is KVM-based when:
- Running Docker. Docker on OpenVZ is restricted or impossible because OpenVZ's kernel doesn't support all the kernel namespaces Docker needs. KVM has no such restriction.
- Installing custom software at the kernel level. WireGuard kernel module, ZFS, eBPF tooling, all need a real kernel you can modify.
- Trusting the isolation. A bad neighbor's runaway process on KVM can't escape into your VM. On OpenVZ, theoretically possible (though rare).
- Running an OS other than the host's. KVM hosts running Linux can serve Windows guests, and vice versa.
For 95% of "I want to run a Linux web app" use cases, you wouldn't notice the difference until something needs kernel-level access, and then KVM is the only one that works.
At RareCloud
All RareCloud VPS plans (Core, Plus, Pro, Elite, etc.) are KVM-based. The dedicated server tier is bare metal (no virtualization at all). The proxy and residential IP products are different infrastructure entirely, separate guide for those.
See also: What is a VPS.