What Is a Dedicated vCPU? The Complete Guide to Exclusive Virtual CPU Resources
Cloud computing has made it easy to spin up a server in minutes, but the marketing around virtual CPUs can be deeply misleading. Terms like “2 vCPU” on a cheap VPS plan and “2 vCPU” on a performance cloud instance can describe radically different things. The gap between them comes down to one question: is that vCPU dedicated to you, or shared with dozens of other customers?
This guide breaks down exactly what a dedicated vCPU is, how it works at the hypervisor level, when you genuinely need one, and how it compares to the alternatives — so you can make an informed decision rather than overpaying for power you don’t need, or underpowering a workload that demands consistency.
How Virtual CPUs Are Created
To understand what makes a vCPU “dedicated,” you first need to understand how virtual CPUs are created in the first place. Physical servers run a piece of software called a hypervisor — a thin layer that sits between the hardware and the virtual machines running on top of it. The hypervisor is responsible for partitioning the server’s physical resources — compute, memory, and storage — and allocating slices of each to individual virtual machines.
The two most widely deployed open-source hypervisors in cloud infrastructure today are KVM (Kernel-based Virtual Machine) and Xen. KVM is built directly into the Linux OS kernel, making it the default choice for most modern cloud providers. Xen is a standalone hypervisor that runs below the operating system and has historically powered large platforms including Amazon Web Services’ original infrastructure. On the enterprise side, VMware ESXi remains a dominant force in private data centres, offering granular CPU scheduling and resource reservation controls that IT teams use to guarantee compute allocations to mission-critical VMs.
There is also a container-based virtualisation model, OpenVZ, which operates differently — sharing a single OS kernel across all containers on a host. Because OpenVZ does not use full hardware virtualisation, CPU scheduling is handled entirely at the kernel level, and true CPU pinning is far more limited compared to KVM or Xen environments.
A vCPU, then, is a virtualised representation of a physical CPU core (or a hardware thread, in the case of hyperthreaded processors). The hypervisor maps virtual CPUs to physical threads and schedules when each VM gets to run on the underlying hardware. How that scheduling works — and how exclusive that access is — is what separates a dedicated vCPU from a shared or burstable one.
Dedicated vCPU vs. Shared vCPU vs. Burstable vCPU
Not all vCPUs are equal. Cloud providers offer at least three distinct vCPU models, each designed for different cost and performance trade-offs.
| Type | CPU Access | Performance | Best For |
|---|---|---|---|
| Dedicated vCPU | Exclusive, pinned core | Consistent, guaranteed | Production workloads, databases, real-time apps |
| Shared vCPU | Overprovisioned, time-sliced | Variable, can degrade under load | Dev/test, low-traffic sites, cron jobs |
| Burstable vCPU | Baseline + burst credits | Spiky — strong short bursts, throttled sustained | Infrequent or unpredictable workloads |
Shared vCPU: the overprovisioning model
A shared vCPU is the dominant model for budget hosting. The host provider maps many virtual CPUs to the same physical cores, relying on the statistical reality that most customers are not running at full load simultaneously. This is called CPU overprovisioning — and it works well until it doesn’t. If your neighbours on the same physical host get busy, the hypervisor’s scheduler must divide available CPU time among all competing VMs, and your workload slows down. This unpredictable degradation is sometimes called the “noisy neighbour” problem, and it is the primary reason teams running production workloads eventually migrate away from shared environments.
Burstable vCPU: credit-based burst capacity
A burstable vCPU is a hybrid model popularised by AWS T-series instances. Your VM is allocated a baseline CPU percentage and earns “burst credits” during idle periods. When your application needs more compute — handling a traffic spike, for example — it draws down those credits to access higher CPU performance temporarily. Once credits are exhausted, the instance throttles back to its baseline. Burstable instances are cost-effective for workloads with predictably low average utilisation punctuated by brief intensive periods. They are a poor fit for any workload that sustains high CPU for extended windows.
Dedicated vCPU: pinned, exclusive, guaranteed
With a dedicated vCPU, the hypervisor pins one or more physical CPU threads exclusively to your virtual machine. No other customer VM competes for those threads. This eliminates the noisy neighbour problem entirely and delivers consistent, predictable compute throughput regardless of what other tenants on the host are doing. The trade-off is cost — dedicated vCPUs are priced higher than shared equivalents, because the provider cannot oversell those physical resources.
What “Pinned” Actually Means at the Hypervisor Level
CPU pinning is a feature supported by hypervisors like KVM and Xen that instructs the scheduler to bind a virtual CPU to a specific physical CPU thread. Once pinned, the OS kernel scheduler inside your VM issues instructions, and the hypervisor maps those instructions directly to the reserved physical thread — without competing for time against other VMs.
In KVM environments, CPU pinning is configured at the VM definition level using tools like virsh or libvirt XML configuration. Xen achieves similar behaviour through its credit scheduler and hard partition features. In VMware ESXi, administrators can configure CPU affinity rules and resource reservations to ensure a VM always has guaranteed access to physical compute capacity.
This is fundamentally different from how OpenVZ handles CPU resources. Because OpenVZ containers share a single host kernel, CPU allocation is managed through kernel cgroups and CPU shares — a proportional mechanism rather than a hard pinning. While OpenVZ offers CPU limits, it cannot provide the same hard isolation guarantees as a full virtualisation hypervisor with CPU pinning enabled.
When You Actually Need a Dedicated vCPU
Dedicated vCPUs are not always necessary — but when a workload demands them, there is no substitute. Here are the scenarios where they earn their cost.
Database engines like PostgreSQL, MySQL, and MongoDB are highly sensitive to CPU scheduling latency. Query response times and replication lag degrade sharply when the hypervisor cannot guarantee CPU access, making dedicated vCPUs essential for production database servers.
Any application where response time SLAs matter — payment processing, messaging platforms, trading systems — cannot tolerate the variable latency introduced by CPU time-slicing on a shared host.
Running Kubernetes or Docker Swarm clusters on shared vCPUs creates compounding scheduling unpredictability. Dedicated vCPUs ensure that container orchestration overhead does not starve application pods of compute.
Compilation, testing, and packaging workloads are CPU-intensive and time-sensitive. Teams that care about build times — and the engineering productivity they impact — benefit significantly from pinned compute.
CPU-based ML inference servers require sustained throughput to serve predictions within acceptable latency windows. Burstable or shared instances create unpredictable tail latencies that degrade model serving quality.
Encoding pipelines saturate CPU cores for extended periods. On shared instances, this sustained load triggers throttling or scheduler starvation. Dedicated vCPUs allow full sustained utilisation without penalty.
Dedicated vCPU and Memory: Why They Go Together
CPU resources rarely operate in isolation. A server’s RAM and its compute allocation are tightly coupled — and the same overprovisioning dynamics that affect shared vCPUs can affect memory on budget instances too. When selecting a dedicated vCPU plan, it is worth ensuring that your RAM allocation is also reserved rather than shared. A database server with a pinned CPU but insufficient dedicated memory will still suffer — the operating system will begin swapping to disk, causing performance degradation that no amount of compute isolation can remedy.
Most cloud providers that offer true dedicated vCPU plans also offer reserved RAM alongside them, but it is worth confirming this explicitly. Look for language like “reserved memory” or “guaranteed RAM” in the instance specifications, not just a number in the memory column.
Storage Matters Too: The Role of NVMe
A dedicated vCPU eliminates compute bottlenecks — but if your storage layer cannot keep pace, the overall system throughput will still be constrained. This is where NVMe drives become relevant. NVMe (Non-Volatile Memory Express) storage connects directly to the CPU over PCIe, delivering sequential read speeds that can exceed 7,000 MB/s on modern hardware — several times faster than SATA SSD and orders of magnitude faster than spinning hard drives.
For workloads like databases, write-heavy applications, and high-frequency log processing, pairing a dedicated vCPU with NVMe-backed storage removes two major bottlenecks simultaneously. CPU-bound queries complete faster, and the storage layer can handle the resulting I/O without queuing. This combination is increasingly the baseline expectation for production cloud infrastructure.
How to Evaluate Whether You Need a Dedicated vCPU
The simplest diagnostic is to run your workload on a shared instance and measure CPU steal time. CPU steal — reported as %st in tools like top, htop, and vmstat — is the percentage of time your VM wants to run but cannot because the hypervisor is serving other VMs on the same host. Any sustained CPU steal above 5–10% is a clear signal that a shared vCPU environment is limiting your application’s performance, and that migrating to a dedicated vCPU plan will produce measurable gains.
vmstat 1 10 on your Linux server and observe the st column (steal time) in the CPU section. Values consistently above 5% indicate you are being throttled by hypervisor scheduling — a dedicated vCPU will directly address this.
For greenfield deployments where you cannot benchmark in advance, use workload type as your guide. Stateless web servers handling low-to-moderate traffic can often run comfortably on burstable vCPUs. Stateful services — databases, caches, message brokers, real-time APIs — almost always justify the cost of dedicated compute from day one.
The Cost-Benefit Calculation
Dedicated vCPU plans typically cost two to four times more than equivalent shared vCPU plans with the same advertised CPU core count and RAM. That premium feels significant until you account for what inconsistent performance costs in production: slower response times that erode user experience, throttled queries that delay data processing, and unpredictable latency spikes that trigger engineering incident responses at 2am.
A useful framing: shared and burstable vCPU plans are excellent for development environments, staging servers, internal tools, low-traffic marketing sites, and any workload where occasional slowdowns are tolerable. Dedicated vCPU plans are an investment in operational reliability for workloads where performance consistency is a product requirement, not a nice-to-have.
It is also worth noting that many teams pay for oversized shared instances trying to compensate for CPU steal — throwing more vCPUs at a problem caused by the shared model rather than addressing it at the root. Migrating to a right-sized dedicated vCPU plan often delivers better performance at similar or lower cost once the apples-to-apples comparison accounts for the effective compute actually delivered.
Dedicated vCPU in Context: The Full Infrastructure Stack
Understanding a dedicated vCPU means understanding where it sits in the full virtualisation stack. At the hardware layer, you have physical servers with multiple CPU cores and hyperthreaded execution units. Above that runs the hypervisor — whether KVM, Xen, or VMware ESXi — which manages how physical resources are carved up and scheduled. The OS kernel inside your virtual machine then handles its own process scheduling on top of the vCPUs it has been allocated.
A dedicated vCPU ensures that the hypervisor layer — the most critical scheduling layer for multi-tenant cloud environments — reserves physical compute exclusively for your VM. Everything above that layer, including your OS kernel and application processes, then operates with the same compute isolation as a physical dedicated server, without the capital expense of owning the hardware outright.
Paired with reserved RAM, fast NVMe storage, and a hypervisor that supports hard CPU pinning, a dedicated vCPU plan delivers the closest thing to bare-metal performance available in a virtualised environment — and for the vast majority of production workloads, that is precisely what the job requires.
Summary
A dedicated vCPU gives your virtual machine exclusive, pinned access to physical CPU threads — eliminating the noisy neighbour problem that makes shared vCPU environments unpredictable and the credit exhaustion that throttles burstable vCPU instances under sustained load. This is made possible by the CPU pinning capabilities built into modern hypervisors like KVM, Xen, and VMware ESXi — and is a capability not available to container-based environments like OpenVZ in the same way.
If you are running production databases, real-time APIs, containerised microservices, or any compute-intensive workload where performance consistency is non-negotiable, a dedicated vCPU is not a luxury — it is the correct tool for the job. Pair it with reserved RAM and NVMe-backed storage, and you have the foundation of a production infrastructure stack built for reliability.