Windows 路线:在 Windows 启动之前执行的 EFI 载荷
本站记录的三项上游项目都是 Linux 内核模块。Windows-GPU-UNLOCK 是另一套实现:它单独建立一个 EFI 系统分区,把寄存器操作放进一个交给 Windows Boot Manager 的载荷里执行。该项目也没有公布同一张卡的原厂/解锁对照,所以这一页给的是已归档配置与启动路径,而不是提升倍数。
这不是 Linux 模块,也不能替代它
这里的内容不适用于 Linux 安装,内核模块也不适用于 Windows。两者共享同一个思路——在 NVIDIA 驱动绑定之前写入速率选择寄存器——但启动路径、工具链和失败模式都不同。如果你在 Linux 上,请使用本站的显卡列表与实测数据。
截至目前,这个发布是什么
最新标签是 v0.3.1,是一个只提供源码的预发布版本。在假定某张卡受支持之前,请先读下面的范围说明。
- Later main-branch hardening added host and build checks, not a new physical boot or recovery test.
- The latest tag, v0.3.1, is a source-only pre-release; the tree carries changes beyond it, including the USB route and the X870 profile.
- Firmware assets and partition-specific EFI binaries are not bundled — you build locally with your own partition GUIDs.
- A generated local profile does not add another verified machine profile.
已归档与已上报的硬件
一个配置只覆盖某个特定系统里的某一张卡。同一型号的 GPU 换一块主板就不再被该配置覆盖,并且只有第一行是维护者自己在测试中归档的。
| 显卡 | 核心 | 状态 | 路径 |
|---|---|---|---|
| RTX 3090 FE 24 GB | GA102 | 维护者已归档 | Internal headless — default profile (ASUS TUF B650M) |
| RTX 3070 Ti 8 GB | GA104 | 已上报硬件成功 | Internal headless (ASUS TUF B660M-E D4) |
| RTX 3090 Ti 24 GB | GA102 | 已上报硬件成功 | Headless USB only (Gigabyte X870 Aorus Elite WiFi7) |
| RTX 3060 12 GB | GA104 | 已上报硬件成功 | Headless USB only (ASUS Prime B660-Plus D4) |
| RTX 3080 | GA102 | 仅上游目标 | No dedicated profile in this port |
四条启动路径,彼此不能互换
走哪条路径取决于显示是否留在独立显卡上,以及你能否使用 U 盘。每条路径在仓库里都有各自的指南。
| 路径 | 显示与输入 | 指南 |
|---|---|---|
| Internal headless | Monitors on the RTX card, display temporarily removed, no T/U/Enter input | 打开指南 |
| Headless USB | Profile-specific wrapper and child staged on a FAT32 USB stick | 打开指南 |
| Internal AMD-display manual / auto | Motherboard or iGPU display preserved; the manual variant needs U | 打开指南 |
| Legacy USB manual | AMD/iGPU display profile; U once, then Boot Override to Windows without a reset | 打开指南 |
开始前需要满足的条件
- Exact supported hardware from a recorded profile — a matching GPU model on another board is not covered.
- A separate GPT FAT32 EFI System Partition of at least 1 GiB. An ordinary FAT32 data partition does not qualify.
- The existing Windows ESP and recovery partition preserved; the tools never create, shrink or format partitions.
- Secure Boot disabled, a fully decrypted Windows C: with BitLocker protection off, and a connected keyboard.
- Python 3.9+, clang/lld-link 20.1.8, the pinned repository dependencies and five firmware assets obtained locally.
真正重要的顺序
1. Prepare a second ESP, not a data partition
The port boots from its own EFI System Partition and leaves Windows' ESP and recovery partition untouched. It does not create, shrink, delete or format anything: you prepare a GPT FAT32 partition of at least 1 GiB and give it a letter.
2. Configure and build from an elevated PowerShell
Both scripts run from the repository root in an administrator PowerShell. Configuration and build stage no boot entry by themselves.
.\internal-boot\Configure.ps1 -UnlockDriveLetter U `
-WindowsEspGuid 'YOUR-WINDOWS-ESP-GUID'
.research\headless\build-unlock.ps1 `
-Clang 'C:\TOOLS\LLVM20\bin\clang.exe' `
-LldLink 'C:\TOOLS\LLVM20\bin\lld-link.exe'3. Register a separate F8 test entry first
Registering adds its own test entry and keeps your existing boot priority. Automatic boot is a separate, explicit action and stays off until the F8 test has actually worked.
.\internal-boot\Headless.ps1 -Assets '.\assets' -Register4. Run one F8 test and wait
Save your work and fully power off, then pick the test entry. Do not press T, U or Enter. The screen goes black while the RTX GOP is removed; the child attempts once and the wrapper starts Windows directly.
5. Only then enable automatic boot
After the F8 test succeeds and the display recovers, automatic boot can be enabled. That action places headless first, Windows Boot Manager second, and disables Windows Fast Startup. Registering the test entry alone does nothing like this.
.\internal-boot\Headless.ps1 -EnableAutomatic -ConfirmedSuccess6. Recovery is Windows-first and independent of the build
If the handoff fails or Windows does not return, power off fully and choose F8 → Windows Boot Manager, or run the restore switch. Windows-first recovery works without saved state.
.\internal-boot\Headless.ps1 -RestoreWindowsFirst那次归档测试测到了什么
原始 B650M / RTX 3090 FE 测试给出了这些 CUDA 12.6 / cuBLAS 12.6、4096 x 4096 下的数值,取三次运行的中位数。这是解锁后显卡的绝对值——项目没有公布对应的原厂数值,因此这不是提升数据。
| 项目 | 数值 |
|---|---|
FP32 pedantic | 22.85 TFLOPS |
FP16 Tensor / FP32 accumulate | 124.97 TFLOPS |
BF16 Tensor / FP32 accumulate | 128.93 TFLOPS |
那次归档测试留下了什么状态
成功的那一次子载荷在解锁后上报了如下状态,这是显卡被干净地交给驱动的证据。
- SS0 read back as 0x88888888
- SS1 read back as 0x8
- Bus-master enable disabled
- Zero remaining mappings
- Cleanup completed and one FLR performed
许可证
GPL-2.0-only for the port and the reused core; EDK2 and separately attributed components keep their own licences. Based on rough2515-hub/rtx3080-unlock-public and Zagitta/gpu-unlock. NVIDIA firmware, PROM/BIOS images, drivers and CUDA DLLs are not redistributed in the source release.