# NVMe generations on Windows: what PCIe 4.0 and 5.0 change, and what they do not

> Where NVMe speed actually shows up, why thermal throttling is invisible in Explorer, and which Windows tools tell you the truth.

**Tested on**

- Build: 26300.9457 / 26100.33650
- Edition: Pro (26H2) / Server
- Architecture: x64
- Evidence: E1
- Verified: 2026-10-29

## The short answer

A faster NVMe link rarely makes Windows feel faster. What changes is:

- **large sequential transfers** (video files, images, game installs);
- **high queue-depth workloads** (many parallel reads, VM images, databases);
- **not** app launch, which is dominated by random reads and CPU.

PCIe 4.0 and 5.0 raise the ceiling; most desktop work never approaches it. The part that actually differs in daily use is **sustained** behaviour — and that is where thermals and DRAM matter more than the generation label.

## What the generation buys

| Link | Practical effect |
|---|---|
| PCIe 3.0 ×4 | ~3.5 GB/s ceiling; fine for most desktops |
| PCIe 4.0 ×4 | ~7 GB/s ceiling; the current mainstream |
| PCIe 5.0 ×4 | ~14 GB/s ceiling; needs cooling and a CPU with enough lanes |

Two constraints people miss:

1. **Lane sharing** — populating a second or third M.2 slot often splits lanes from the GPU or disables a SATA port. The board manual has the table.
2. **Drive vs link** — a Gen5 slot with a Gen4 drive runs at Gen4. Windows will not warn you; it just runs slower.

## See what Windows thinks you have

```powershell
Get-PhysicalDisk | Select-Object FriendlyName,MediaType,BusType,Size,HealthStatus
Get-Disk | Select-Object Number,FriendlyName,BusType,PartitionStyle,Size
Get-CimInstance Win32_DiskDrive | Select-Object Model,InterfaceType,MediaType,Size,FirmwareRevision
```

`BusType` shows `NVMe`, `SATA` or `RAID`. It does **not** show the PCIe generation — the OS does not have a supported field for it. Confirm the link in firmware setup or with the vendor tool.

## Why the drive slows down after a few minutes

Two independent effects:

- **SLC cache exhaustion** — consumer drives absorb bursts into a fast cache mode, then fall back to the real write speed of the NAND. A drive that writes at 5 GB/s for 10 seconds and 800 MB/s after is behaving normally.
- **Thermal throttling** — controllers reduce speed above a temperature threshold. On a Gen5 drive without a heatsink this happens quickly.

Windows does not show either in Task Manager. Task Manager reports activity, not the drive's internal state.

```powershell
# where the time actually goes: latency and queue, per disk
Get-Counter '\PhysicalDisk(*)\Avg. Disk sec/Transfer','\PhysicalDisk(*)\Current Disk Queue Length' -MaxSamples 5
```

Rising `Avg. Disk sec/Transfer` with a high queue and low throughput is the signature of a throttled or saturated drive.

## TRIM and maintenance

NVMe drives need TRIM to keep write performance after deletions. Windows runs it automatically; `Optimize-Volume` lets you trigger and check it:

```powershell
Optimize-Volume -DriveLetter C -ReTrim -Verbose
Get-PhysicalDisk | Select-Object FriendlyName,HealthStatus,OperationalStatus
```

Do **not** defragment an SSD, and do not disable the scheduled optimization task "for SSD longevity" — that task is what issues TRIM.

> **Caution: Gen5 without airflow is slower than Gen4**
>
> A throttled Gen5 drive can sustain less than a well-cooled Gen4 one. If the M.2 slot sits under the GPU with no airflow, buy on sustained numbers and add a heatsink, not on the peak spec.

## Choosing between generations

- **Office/browsing**: any NVMe; capacity and DRAM class matter more than the generation.
- **Gaming**: Gen4 is the value point; game load times barely move above it.
- **Video/VM images**: sustained write and capacity matter; check the SLC-cache size.
- **Server**: use enterprise drives with power-loss protection, not consumer Gen5.

## Related

- [SSD selection](https://windows.homes/en/hardware/ssd/)
- [Storage Spaces](https://windows.homes/en/hardware/storage/storage-spaces/)
- [Drive health](https://windows.homes/en/hardware/storage/health-smart/)

## Lab boundary

E1. Link speeds and throttling are hardware properties; Windows exposes bus type and health but not the PCIe generation. The lab's virtual disks are VirtIO/SATA, so no NVMe behaviour was measured here.

## Sources

- [Microsoft Learn — Get-PhysicalDisk](https://learn.microsoft.com/en-us/powershell/module/storage/get-physicaldisk)
- [Microsoft Learn — Win32_DiskDrive](https://learn.microsoft.com/en-us/windows/win32/cimwin32prov/win32-diskdrive)
- [Microsoft Learn — Optimize-Volume](https://learn.microsoft.com/en-us/powershell/module/storage/optimize-volume)
- [NVM Express — specifications](https://nvmexpress.org/specifications/)

---

Source: https://windows.homes/en/hardware/storage/nvme-generations/
