必须读取PCIe链路层实时协商GT/s值:一、CrystalDiskInfo查“Interface”行Current值;二、HWiNFO64看Current Link Speed字段;三、PowerShell调用MSFT_NVMeController查LinkSpeed;四、BIOS中确认M.2插槽PCIe Version设置。

要确认 Windows 11 中 NVMe 固态硬盘当前真实运行在 PCIe 3.0 还是 PCIe 4.0 物理传输速率等级,不能只看硬盘包装盒或电商页面写的“支持 PCIe 4.0”,也不能依赖设备管理器里模糊的“NVMe”字样——因为哪怕硬盘本身支持 PCIe 4.0,只要插在芯片组直连的 M.2 插槽、被主板 BIOS 锁定为 PCIe 3.0 模式、或与另一颗 SSD 共享 CPU PCIe 通道,它就会被迫降速运行在 7.9 GT/s(PCIe 3.0)而非 16.0 GT/s(PCIe 4.0),实际顺序读写可能跌掉 40% 以上。
用 CrystalDiskInfo 直接读取链路协商结果
CrystalDiskInfo 解析的是 SSD 控制器固件暴露的 PCIe 链路状态寄存器,显示值就是硬件训练完成后的物理协商结果,无需管理员权限,适合第一眼快速验证。
访问官网 https://crystalmark.info/en/software/crystaldiskinfo/ 下载 Standard Edition 安装包,安装后以普通用户身份启动软件。
左侧设备列表中点击你的 NVMe SSD(例如“Samsung 990 PRO”或“Crucial P5 Plus”)。
右侧主面板中找到【Interface】或【传输模式】这一行:若显示【PCIe 4.0 x4】,即为 PCIe 4.0;若显示【PCIe 3.0 x4】,则当前实打实跑在 PCIe 3.0 速率;注意必须盯紧“Current”字段,别被旁边“Supported: PCIe 5.0”这种标称值带偏。
如果该行只显示“PCIe”而没带 GT/s 或代际数字,说明 NVMe 扩展信息未加载——点击顶部菜单【功能】→【高级特征】→勾选【SMART信息】和【NVMe信息】,再点左上角【重新加载】按钮刷新数据。
用 HWiNFO64 查 Current Link Speed 寄存器值
HWiNFO64 绕过驱动抽象层,直接读取 PCIe 配置空间 Link Status 寄存器里的 Current Link Speed 字段,数值精确到小数点后一位 GT/s,是验证是否被 BIOS 或插槽限制的黄金标准,尤其适合排查“明明是 PCIe 4.0 硬盘却跑不满”的问题。
前往 https://www.hwinfo.com/download/ 下载最新便携版 ZIP 包,解压后【务必以管理员身份运行】HWiNFO64.exe。
启动后选择“Sensors only”模式 → 点击“Run”进入传感器视图。
在左侧设备树中展开【PCI Bus】→ 找到含你 SSD 厂商 ID 的条目(如 VEN_144D 是三星、VEN_1987 是铂科、VEN_10EC 是铠侠)→ 展开至具体 NVMe 控制器节点。
右侧信息栏中查找【Current Link Speed】字段:显示【16.0 GT/s】即 PCIe 4.0;显示【7.9 GT/s】即 PCIe 3.0;出现【32.0 GT/s】说明已上 PCIe 5.0——这个值完全由物理链路训练决定,无法伪造,也不受系统驱动影响。
用 PowerShell 调 WMI 获取 LinkSpeed 数值
PowerShell 调用内核级 WMI 类 MSFT_NVMeController,返回的是存储驱动栈从 PCIe 配置头读取的原始 LinkSpeed 字段,单位为整数:8 对应 PCIe 3.0,16 对应 PCIe 4.0,32 对应 PCIe 5.0。结果可信度高,且不依赖 GUI 软件界面状态。
第一步:右键“开始”按钮 → 选择“终端(管理员)” → 确保左上角显示 PowerShell 图标。
第二步:输入以下命令并回车执行:
Get-WmiObject -Namespace "Root\WMI" -Class MSFT_NVMeController | Select-Object DeviceId, LinkWidth, LinkSpeed
第三步:在输出结果中定位 LinkSpeed 列——值为【16】即 PCIe 4.0;值为【8】即 PCIe 3.0;LinkWidth 同时为 4 才代表全速通道数,二者需同时满足才算真正跑满 PCIe 4.0 x4。
若提示“类不存在”,说明 NVMe WMI 提供程序未加载——此时需进入 BIOS,启用“Above 4G Decoding”和“Resizable BAR”,保存重启后再执行该命令。

















