# 实验室方法：E1/E2/E3、M-V/M-P、PVE 模板与快照

> WinBook 如何产出证据：官方来源、PVE 模板、GPU 直通测量、原始数据，以及每个级别的边界。

**测试环境**

- 版本号: 26300.9711 / 26100.33650
- 版本: 实验室
- 架构: x64
- 证据: E2, M-V
- 核验日期: 2026-10-27

## 证据等级

| 级别 | 含义 | 能支撑什么 |
|---|---|---|
| E1 | 官方文档/规格，未在站内执行 | “微软文档这样描述” |
| E2 | 在固定 PVE 模板中复现 | “在我们的 26H2 VM 里，行为是这样” |
| E3 | 在物理机或第二宿主复现 | “在这台硬件上，行为是这样” |
| M-V | GPU 直通 VM 内测量，保留原始数据 | 同环境前后差异，不是绝对 FPS |
| M-P | 裸机测量，保留原始数据 | 有硬件上下文的性能结论 |

> **警告: 虚拟机不是物理机**
>
> 直通 VM 很适合复现 UI、策略、驱动安装和服务行为；它不能替代裸机的帧时间结论。站内每一条测量都标注模式。

## 模板基线

- PVE 宿主使用独立 bridge；Windows 实验流量不桥接到生产 LAN。
- Windows 11 26H2：q35、OVMF、vTPM 2.0、VirtIO SCSI single、VirtIO 网卡、QEMU Guest Agent。
- VirtIO 驱动固定 **0.1.271**；模板记录 ISO 与驱动版本。
- Server 2025：Desktop 与 Core 两个模板，评估版，记录 `expiresAt`。
- 每次实验从快照开始；快照名写入测试记录。

## 步骤

- [ ] **克隆模板** (PVE 宿主机)

  不要改模板。克隆、改名，并记录模板版本与克隆 id。

  预期结果: 链接克隆启动后 build 正确，没有待处理驱动警告。

- [ ] **改动前快照** (虚拟机)

  快照名：`<页面>-<改动>-before`。如果改动涉及存储或启动路径，用完整克隆而不是快照。

  预期结果: 存在一个命名快照，且可以回滚。

- [ ] **执行测量** (虚拟机)

  丢掉第一次冷启动。保留中位数与 1% low；记录室温与电源计划。

  预期结果: 同一场景跑 5 次，保存原始 CSV，记录 build 与驱动。

- [ ] **归档证据** (终端（管理员）)

  只有归档存在，页面才能标 `E2`/`M-V`。没有配方的截图不算证据。

  预期结果: 配方、VM 配置、原始数据和截图都存到页面 id 下。

## 反作弊与直通

部分游戏拒绝在虚拟机里运行。这是按游戏的策略，不是实验室的 bug。测试记录把这类游戏标为“VM 不可测”；有物理机时再用 `M-P` 复测。

## 实验室不做什么

- 绕过 TPM/Secure Boot 装到不支持的硬件上，然后说“支持”。
- 用“rearm”脚本延长评估版。
- 没有原始数据和硬件清单就发测量。
- 隐藏失败的运行。

## 来源

- [Proxmox Wiki — Windows 11 虚拟机最佳实践](https://pve.proxmox.com/wiki/Windows_11_guest_best_practices)
- [Proxmox Wiki — Windows VirtIO 驱动](https://pve.proxmox.com/wiki/Windows_VirtIO_Drivers)

---

来源页面: https://winbook.fyi/zh/lab/method/
