La vía Windows: una carga EFI que se ejecuta antes de que arranque Windows

Los tres proyectos upstream que documenta este sitio son módulos del kernel Linux. Windows-GPU-UNLOCK es otra implementación: crea su propia partición de sistema EFI y hace el trabajo sobre los registros en una carga que cede el control al Windows Boot Manager. Tampoco publica comparación de origen/desbloqueado en la misma tarjeta, así que esta página da los perfiles registrados y las rutas de arranque, no una ganancia.

Esto no es el módulo de Linux y no lo sustituye

Nada de aquí se aplica a una instalación Linux, y el módulo del kernel no se aplica a Windows. Ambos comparten la idea de fondo — escribir el registro de selección de tasa antes de que el driver NVIDIA se enlace —, pero la ruta de arranque, las herramientas y los modos de fallo son distintos. Si usas Linux, emplea la lista de tarjetas y las mediciones de este sitio.

Qué es esta versión a día de hoy

La última etiqueta es v0.3.1, una preversión que solo incluye código fuente. Lee la lista de alcance antes de dar una tarjeta por cubierta.

Hardware registrado y reportado

Un perfil cubre una tarjeta en un sistema concreto. El mismo modelo de GPU en otra placa no queda cubierto por ese perfil, y solo la primera fila fue registrada por el mantenedor en su propia prueba.

TarjetaChipEstadoRuta
RTX 3090 FE 24 GBGA102Registrado por el mantenedorInternal headless — default profile (ASUS TUF B650M)
RTX 3070 Ti 8 GBGA104Éxito de hardware reportadoInternal headless (ASUS TUF B660M-E D4)
RTX 3090 Ti 24 GBGA102Éxito de hardware reportadoHeadless USB only (Gigabyte X870 Aorus Elite WiFi7)
RTX 3060 12 GBGA104Éxito de hardware reportadoHeadless USB only (ASUS Prime B660-Plus D4)
RTX 3080GA102Solo objetivo upstreamNo dedicated profile in this port

Cuatro rutas de arranque, no intercambiables

La ruta depende de si la salida de vídeo se queda en la tarjeta dedicada y de si puedes usar un lápiz USB. Cada una tiene su propia guía en el repositorio.

RutaPantalla y entradaGuía
Internal headlessMonitors on the RTX card, display temporarily removed, no T/U/Enter inputAbrir guía
Headless USBProfile-specific wrapper and child staged on a FAT32 USB stickAbrir guía
Internal AMD-display manual / autoMotherboard or iGPU display preserved; the manual variant needs UAbrir guía
Legacy USB manualAMD/iGPU display profile; U once, then Boot Override to Windows without a resetAbrir guía

Requisitos antes de empezar

El orden que importa

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.

Qué midió la ejecución registrada

La ejecución original de B650M / RTX 3090 FE reportó estos valores con CUDA 12.6 / cuBLAS 12.6 a 4096 x 4096, mediana de tres ejecuciones. Son cifras absolutas de la tarjeta desbloqueada — no se publica un valor de origen junto a ellas, así que no son una ganancia.

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

El estado que dejó la ejecución registrada

La carga hija correcta reportó este estado tras el desbloqueo, que es la prueba de que la tarjeta se entregó limpia al driver.

Licencia

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 en GitHub

Preguntas frecuentes