Where compute starts
Every cloud has the same building block at the bottom: a virtual machine you rent by time. Azure adds layers on top of it, such as groups that scale, mixed fleets, whole physical servers and schedulers for large batch and HPC work. This lesson covers each layer and maps it to AWS and Google Cloud. App hosting, functions and containers come in later levels.
Tables are current as of 31 October 2026. Where a mapping is my judgement rather than a one-to-one match, it is marked (judgement).
Azure compute services at a glance
| Azure service | What it is for | Former name / note |
|---|---|---|
| Virtual Machines | One Windows or Linux server you manage yourself | Some older docs say "IaaS VMs" |
| Virtual Machine Scale Sets | Groups of identical or mixed VMs with autoscale. Flexible orchestration mode is the default choice for new builds | Uniform mode is the older style |
| Azure Compute Fleet | Deploys up to 10,000 VMs at once across a mix of sizes, zones, and Spot or standard pricing | GA April 2025, no extra charge |
| Azure Spot Virtual Machines | Spare capacity at a deep discount that Azure can evict | Replaced "low-priority VMs" |
| Azure Dedicated Host | A whole physical server reserved for your VMs, for licensing or isolation | — |
| Azure Batch | A managed job scheduler that runs large parallel jobs on pools of VMs | — |
| Azure CycleCloud | Builds and runs HPC clusters with Slurm and other schedulers. CycleCloud Workspace for Slurm is the Marketplace starter | — |
| Azure VMware Solution | Runs VMware Cloud Foundation on dedicated Azure hardware | — |
| Confidential VMs (DC/EC series) | VMs that keep data encrypted while it is in use | Part of Azure confidential computing |
Read a size name before you compare
The providers don't line up by service name. They line up by size family. An Azure size name tells you what you're getting:
Standard_D4ads_v5
│ │└┬┘ └─ v5 = version (generation) of the D family
│ │ └──── a,d,s = AMD CPU, local temp disk, any Premium SSD type supported
│ └────── 4 = vCPUs
└──────── D = family (general purpose)
# Other letters you will meet:
# p = Arm-based CPU m = memory intensive l = low memory
# r = RDMA (InfiniBand) network e = confidential (TDX)
Rough family matches (judgement, because the vCPU-to-memory ratios and CPU generations differ):
| Job | Azure | AWS | Google Cloud |
|---|---|---|---|
| General purpose | D | M | E2, N and C general-purpose families |
| Burstable / small | B | T | E2 shared-core |
| Compute heavy | F (and D with l) |
C | Compute-optimised (C2, H) |
| Memory heavy | E, M | R, X | M (memory-optimised) |
| Local storage heavy | L | I | Z3 / local SSD options |
| GPU | N (NC, ND, NV) | P, G | A, G |
| HPC with InfiniBand | H (HB, HX) | Hpc | H |
Gotcha: "D" means general purpose on Azure, but on AWS the D family is dense storage. Use this table to start your search, then compare actual vCPU, memory and network numbers.
How to pick, in a few sentences
One or a few long-lived servers? -> Virtual Machines
Many copies of a stateless tier that scale? -> Scale Sets (Flexible)
Thousands of VMs across mixed sizes or pricing? -> Compute Fleet
Interruptible and cost-driven? -> Spot (inside a scale set or fleet)
Licences or rules need a whole physical server? -> Dedicated Host
Queue of jobs, no cluster you want to manage? -> Batch
Traditional HPC users who expect Slurm? -> CycleCloud
Lifting a VMware estate without re-platforming? -> Azure VMware Solution
Equivalence table: one row per job
| Job | Azure | AWS | Google Cloud | Where the match breaks |
|---|---|---|---|---|
| Single VM | Virtual Machines | EC2 instances | Compute Engine VMs | Size families and ratios differ (see above) |
| Autoscaling VM group | VM Scale Sets | EC2 Auto Scaling groups | Managed instance groups | Close match. Scale Sets Flexible mode can mix sizes |
| Large mixed-size fleet | Compute Fleet | EC2 Fleet | No direct equivalent. Closest is managed instance groups (judgement) | Compute Fleet caps at 10,000 VMs per fleet |
| Spare capacity | Spot VMs | EC2 Spot Instances | Spot VMs | Eviction notice varies, see below |
| Single-tenant hardware | Dedicated Host | EC2 Dedicated Hosts | Sole-tenant nodes | Licence-mobility rules differ by vendor |
| Managed batch | Azure Batch | AWS Batch | Google Cloud Batch | Close in purpose. Pool and queue models differ |
| HPC cluster tooling | CycleCloud | AWS ParallelCluster | Cluster Toolkit (formerly HPC Toolkit) | Each is tooling around VMs, not a separate compute type |
| VMware in the cloud | Azure VMware Solution | Amazon Elastic VMware Service (EVS) | Google Cloud VMware Engine | Licensing models and node types differ. Check the current terms |
| Confidential VM | Confidential VMs | Confidential computing on Nitro and AMD SEV-SNP (judgement) | Confidential VMs | Different hardware and attestation |
Spot eviction and billing: the differences that bite
| Azure Spot | AWS Spot | Google Cloud Spot | |
|---|---|---|---|
| Warning before you lose the VM | Up to 30 s, best effort, via Scheduled Events | 2 minutes | No dedicated notice by default. You can opt in to 120 s. Shutdown window is up to 30 s |
| What happens to the VM | Deallocate (default) or Delete | Terminate, stop or hibernate | Stop or delete |
| Pricing knob | Max price, or -1 so price never evicts you |
Optional max price | Fixed discount |
On billing, AWS (Linux) and Google Cloud charge per second after a one-minute minimum. Google Cloud doesn't bill Spot VMs it preempts within their first minute. Azure markets pay-as-you-go VMs as charged per second. Check the meter on a real invoice before you rely on that.
Trade-off: An app that needs 90 seconds to drain cleanly is fine on AWS Spot but loses work on Azure Spot. On Azure, write checkpoints often instead of counting on the warning.
Gotcha: Azure Spot doesn't support B-series. You also can't convert an existing VM to Spot, because Spot is set when the VM is created.
What's retiring
- NVv3 GPU sizes retired on 30 September 2026.
- HC, HBv2 and NP series retire on 31 May 2027. Reserved-instance purchases for them ended on 2 April 2026.
- D, Ds, Dv2, Dsv2 and Ls retire on 1 May 2028.
- F, Fs, Fsv2, Lsv2, G, Gs, Av2, Amv2 and the original B-series retire on 15 November 2028.
- Since 1 July 2026, you can't buy new reserved instances for many of these legacy series. Don't build new capacity plans on them.
- Azure HPC Cache was retired on 30 September 2025. Older HPC designs that used it need a different cache or file system.
For depth on sizing, availability and pricing models, take Cloud Pro: Azure Compute.
Key takeaways
- Match providers by size family and real specs. The letters in names don't mean the same thing on each cloud.
- VMs, Scale Sets, Spot, Dedicated Host and Batch each have a close AWS and Google Cloud equivalent. Compute Fleet has no exact Google Cloud match.
- Spot warnings: Azure gives up to 30 s best effort, AWS gives 2 min, and Google Cloud gives 0 s by default with an optional 120 s.
- Legacy series (D/Dv2, F/Fsv2, Av2, the original B-series, HC/HBv2) retire in 2027–2028, and reservations for them have already ended.