Der Windows-Weg: ein EFI-Payload, der vor dem Windows-Start läuft

Die drei hier dokumentierten Upstream-Projekte sind Linux-Kernelmodule. Windows-GPU-UNLOCK ist eine andere Umsetzung: Es legt eine eigene EFI-Systempartition an und führt die Registerarbeit in einem Payload aus, der an den Windows Boot Manager übergibt. Ein Vorher-Nachher-Paar derselben Karte wird nicht veröffentlicht, daher nennt diese Seite die erfassten Profile und Startwege statt einer Gewinnangabe.

Das ist nicht das Linux-Modul und ersetzt es nicht

Nichts davon gilt für eine Linux-Installation, und das Kernelmodul gilt nicht für Windows. Beide teilen die Grundidee — das Rate-Select-Register schreiben, bevor der NVIDIA-Treiber bindet —, aber Startweg, Werkzeuge und Fehlerbilder unterscheiden sich. Unter Linux nutzen Sie die Kartenliste und die Messwerte dieser Seite.

Was dieses Release derzeit ist

Das neueste Tag ist v0.3.1, ein Pre-Release, das nur Quellcode enthält. Lesen Sie die Umfangsliste, bevor Sie eine Karte als abgedeckt ansehen.

Erfasste und gemeldete Hardware

Ein Profil deckt eine Karte in einem bestimmten System ab. Dasselbe GPU-Modell auf einem anderen Mainboard ist von diesem Profil nicht erfasst, und nur die erste Zeile wurde vom Maintainer im eigenen Test erfasst.

KarteChipStatusWeg
RTX 3090 FE 24 GBGA102Vom Maintainer erfasstInternal headless — default profile (ASUS TUF B650M)
RTX 3070 Ti 8 GBGA104Hardware-Erfolg gemeldetInternal headless (ASUS TUF B660M-E D4)
RTX 3090 Ti 24 GBGA102Hardware-Erfolg gemeldetHeadless USB only (Gigabyte X870 Aorus Elite WiFi7)
RTX 3060 12 GBGA104Hardware-Erfolg gemeldetHeadless USB only (ASUS Prime B660-Plus D4)
RTX 3080GA102Nur Upstream-ZielNo dedicated profile in this port

Vier Startwege, nicht austauschbar

Welcher Weg passt, hängt davon ab, ob das Bild auf der diskreten Karte bleibt und ob Sie einen USB-Stick nutzen können. Jeder Weg hat einen eigenen Leitfaden im Repository.

WegBild und EingabeLeitfaden
Internal headlessMonitors on the RTX card, display temporarily removed, no T/U/Enter inputLeitfaden öffnen
Headless USBProfile-specific wrapper and child staged on a FAT32 USB stickLeitfaden öffnen
Internal AMD-display manual / autoMotherboard or iGPU display preserved; the manual variant needs ULeitfaden öffnen
Legacy USB manualAMD/iGPU display profile; U once, then Boot Override to Windows without a resetLeitfaden öffnen

Voraussetzungen vor dem Start

Die Reihenfolge, auf die es ankommt

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.

An ordinary FAT32 data partition is not a substitute. The tools also do not disable BitLocker — decrypt C: and turn protection off first.

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'

Use your own partition GUID and tool paths. Without an action switch, `Headless.ps1 -Assets '.\assets'` only stages files.

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' -Register

On the tested ASUS firmware the entry appears as F8 → GPU Headless UNLOCK - EXPERIMENTAL.

4. 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.

Do not reset between the unlock and Windows. The two Esc windows differ: Esc in the initial wrapper boots Windows without the release, while Esc in the later three-second child window cancels into a stop and does not restore the display.

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 -ConfirmedSuccess

`-ConfirmedSuccess` is the acknowledgement that you personally saw the test boot work.

6. 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

Restoring the previous Fast Startup setting does need the saved state, so keep it and keep backups.

Was der erfasste Lauf gemessen hat

Der ursprüngliche B650M-/RTX-3090-FE-Lauf meldete diese Werte unter CUDA 12.6 / cuBLAS 12.6 bei 4096 x 4096 als Median aus drei Läufen. Es sind Absolutwerte der entsperrten Karte — ein Stock-Wert dazu ist nicht veröffentlicht, also ist es kein Gewinn.

PfadWert
FP32 pedantic22.85 TFLOPS
FP16 Tensor / FP32 accumulate124.97 TFLOPS
BF16 Tensor / FP32 accumulate128.93 TFLOPS

Was der erfasste Lauf hinterlassen hat

Der erfolgreiche Child meldete nach dem Unlock diesen Zustand — der Beleg dafür, dass die Karte sauber an den Treiber übergeben wurde.

Lizenz

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.

impacifist/Windows-GPU-UNLOCK auf GitHub

Häufige Fragen