Appendix E · QEMU vCPU List

附录 E QEMU vCPU 列表

QEMU 中定义的 Intel / AMD x86-64/amd64 CPU 类型 , 自 2007 年起。在创建 VM 时通过 --cpu 选项指定。

E.QEMU vCPU 列表QEMU vCPU List

E.1.简介

本节列出 QEMU 中预定义的 Intel / AMD x86-64 CPU 类型。许多类型有 -IBRS / -noTSX / -vN 变体 —— 用于在硬件揭露 Spectre / Meltdown / TSX 等漏洞缓解后切换 , 或补全缺失的 CPU 标志。详见 §10.2.5(CPU)关于 CPU 类型选择策略与 host / kvm64 / x86-64-v2-AES 等通用类型。

E.2.Intel CPU 类型

大致按上市年份排序:

  • Nehalem :第 1 代 Intel Core 处理器
    • Nehalem-IBRS (v2):增加 Spectre v1 防护(+spec-ctrl)
  • Westmere :第 1 代 Intel Core 处理器(Xeon E7-)
    • Westmere-IBRS (v2):增加 Spectre v1 防护(+spec-ctrl)
  • SandyBridge :第 2 代 Intel Core 处理器
    • SandyBridge-IBRS (v2):增加 Spectre v1 防护(+spec-ctrl)
  • IvyBridge :第 3 代 Intel Core 处理器
    • IvyBridge-IBRS (v2):增加 Spectre v1 防护(+spec-ctrl)
  • Haswell :第 4 代 Intel Core 处理器
    • Haswell-noTSX (v2):禁用 TSX(-hle、 -rtm)
    • Haswell-IBRS (v3):恢复 TSX 并增加 Spectre v1 防护(+hle、 +rtm、 +spec-ctrl)
    • Haswell-noTSX-IBRS (v4):再次禁用 TSX(-hle、 -rtm)
  • Broadwell :第 5 代 Intel Core 处理器
  • Skylake :第 1 代 Xeon Scalable 服务器处理器
    • Skylake-IBRS (v2):增加 Spectre v1 防护、禁用 CLFLUSHOPT(+spec-ctrl、 -clflushopt)
    • Skylake-noTSX-IBRS (v3):禁用 TSX
    • Skylake-v4:增加 EPT 切换(+vmx-eptp-switching)
  • Cascadelake :第 2 代 Xeon Scalable
    • Cascadelake-v2:增加 arch_capabilities MSR(+arch-capabilities、 +rdctl-no、 +ibrs-all、 +skip-l1dfl-vmentry、 +mds-no)
    • Cascadelake-v3:禁用 TSX
    • Cascadelake-v4:增加 EPT 切换
    • Cascadelake-v5:增加 XSAVES(+xsaves、 +vmx-xsaves)
  • Cooperlake :第 3 代 Xeon Scalable(4 / 8 路服务器)
    • Cooperlake-v2:增加 XSAVES
  • Icelake :第 3 代 Xeon Scalable 服务器
    • Icelake-v2:禁用 TSX
    • Icelake-v3:增加 arch_capabilities MSR(含 +pschange-mc-no、 +taa-no)
    • Icelake-v4:补齐缺失标志(+sha-ni、 +avx512ifma、 +rdpid、 +fsrm、 +vmx-rdseed-exit、 +vmx-pml、 +vmx-eptp-switching)
    • Icelake-v5:增加 XSAVES
    • Icelake-v6:增加「5 级 EPT」(+vmx-page-walk-5)
  • SapphireRapids :第 4 代 Xeon Scalable 服务器

E.3.AMD CPU 类型

  • Opteron_G3 :K10
  • Opteron_G4 :Bulldozer
  • Opteron_G5 :Piledriver
  • EPYC :第 1 代 Zen
    • EPYC-IBPB (v2):增加 Spectre v1 防护(+ibpb)
    • EPYC-v3:补齐缺失标志(+perfctr-core、 +clzero、 +xsaveerptr、 +xsaves)
  • EPYC-Rome :第 2 代 Zen
    • EPYC-Rome-v2:增加 Spectre v2 / v4 防护(+ibrs、 +amd-ssbd)
  • EPYC-Milan :第 3 代 Zen
    • EPYC-Milan-v2:补齐缺失标志(+vaes、 +vpclmulqdq、 +stibp-always-on、 +amd-psfd、 +no-nested-data-bp、 +lfence-always-serializing、 +null-sel-clr-base)
NOTE

除上述具体型号外 , PVE 还提供 host(透传)、 kvm32 / kvm64(最大兼容)以及 x86-64 微架构等级 x86-64-v2 / x86-64-v2-AES / x86-64-v3 / x86-64-v4。如何选择详见 §10.2.5。完整列表也可经 qm cpu --help 查看。