GPU Unlock sous Windows

La voie Windows de impacifist/Windows-GPU-UNLOCK : une application UEFI déverrouille la carte puis chaîne le Windows Boot Manager, si bien que la carte reste déverrouillée sous le pilote NVIDIA d'origine sans redémarrer sous Linux.

Le module Linux présenté sur ce site doit se charger avant le pilote NVIDIA, ce qui impose un redémarrage sous Linux. Ce projet fait l'inverse : une application UEFI compilée localement effectue la même écriture de registre, puis passe la main au Windows Boot Manager dans le même démarrage. La carte apparaît déverrouillée sous le pilote Windows d'origine.

Programme d'installation Windows

Ce site construit un programme d'installation à partir de l'archive source v0.3.1 épinglée. Il installe les scripts, la documentation et les licences, c'est-à-dire une copie des sources. Aucun binaire précompilé : l'image EFI doit être compilée pour vos propres partitions. Les vidages de firmware et les DLL de pilote n'y sont pas et ne peuvent pas y être ; l'installateur épargne donc le checkout, pas le déverrouillage.

Télécharger le programme d'installation — GPU-Unlock-Windows-0.3.1-Setup.exe

Source épingléev0.3.1 (9352abd27480)
SHA-256 de l’installateurde4206e1a207597060256b63ea09245ff6acc259c26f97db5a5c50c9ace2aa35
SHA-256 de l'archive sourced81ddec78fb260f6e9bbb0e5d66d4b9d168dbe53222813d2cce9c2e29e07d9c6
Version amontimpacifist/Windows-GPU-UNLOCK v0.3.1

Télécharger le fichier .sha256

Non signé et non officiel : ni NVIDIA, ni ASUS, ni impacifist ne le publient. Windows signalera un éditeur inconnu. Vérifiez le SHA-256 de l'archive avant d'exécuter les scripts, et lisez la page de compatibilité avant de compiler — une compilation réussie n'est pas une autorisation de déverrouiller.

Trois voies de démarrage

Même charge utile EFI, trois façons de la placer devant Windows. Choisissez-en une ; ce ne sont pas des étapes successives. Les commandes sont reprises telles quelles de la documentation épinglée.

1. Récupérer la source épinglée

Clonez l'étiquette v0.3.1, pas la branche par défaut. La documentation et la compilation EFI sont liées à cette révision, et les fichiers locaux écrits par les scripts ne se transportent pas d'une révision à l'autre.

git clone --branch v0.3.1 --depth 1 https://github.com/impacifist/Windows-GPU-UNLOCK.git
cd Windows-GPU-UNLOCK

2a. Clé USB, sans toucher aux partitions

Une clé FAT32 ordinaire ; aucune partition n'est créée, réduite ni retypée et aucune entrée de démarrage firmware n'est enregistrée. L'outil valide taille et empreinte des cinq fichiers et écrit un nouveau dossier local — vous copiez vous-même son contenu à la racine de la clé.

python .\tools\prepare_usb.py --assets .\assets --output .\usb-package

2b. ESP interne dédiée

Une partition EFI système GPT FAT32 distincte d'au moins 1 GiB, préparée à la main après sauvegarde. Configure.ps1 écrit des fichiers locaux ignorés ; Build.ps1 compile un wrapper et un enfant liés par un contrat d'empreinte. Ni l'un ni l'autre ne modifie les réglages de démarrage.

.\internal-boot\Configure.ps1 -UnlockDriveLetter U -WindowsEspGuid 'WINDOWS-ESP-GUID-HERE'
.\internal-boot\Build.ps1 -Clang 'C:\TOOLS\LLVM20\bin\clang.exe' -LldLink 'C:\TOOLS\LLVM20\bin\lld-link.exe'

3. Déposer, puis éventuellement enregistrer

Le simple dépôt ne change ni entrée de démarrage, ni ordre, ni démarrage rapide. -Register ajoute une entrée F8 distincte et conserve la priorité existante. Le démarrage documenté est F8 → GPU Headless UNLOCK, sans aucune touche ensuite.

# Stage only: no boot entry, boot-order or Fast Startup change.
.\internal-boot\Headless.ps1 -Assets '.\assets'

# Stage and append a separate F8 entry, retaining existing boot priority.
.\internal-boot\Headless.ps1 -Assets '.\assets' -Register

Revenir en arrière

Une commande documentée remet Windows en premier. Conservez l'état local et les sauvegardes écrites par les scripts : ce sont des entrées de récupération, pas des fichiers de version.

.\internal-boot\Headless.ps1 -RestoreWindowsFirst

Cinq fichiers de firmware à fournir

L'outil d'empaquetage et l'application UEFI rejettent tous deux une empreinte différente : une version voisine ne remplace pas. Générez-les à partir d'entrées NVIDIA obtenues légalement avec le pipeline amont épinglé ; ce site donne la procédure, pas les fichiers.

  • booter_load_ga102.bin
  • v67-ga102-610.43.03.bin
  • gsp_ga10x.bin
  • gsp_boot_ga102.bin
  • gsp_boot_desc_ga102.bin

Non redistribués ici ni dans l'installateur : firmware NVIDIA, vidages VBIOS/PROM, DLL de pilote et binaires EFI privés liés à une partition. Conservez avec eux la licence NVIDIA et l'avis générés.

L'unique succès documenté

Une machine, une carte, un démarrage : ASUS BIOS 3057 et une RTX 3090 Founders Edition le 2026-10-24. Ce sont des valeurs relevées, pas une liste d'autorisation — le code revérifie configuration, PROM, état à froid et code du pilote, et refuse ce pour quoi il n'a pas été compilé.

CarteNVIDIA RTX 3090 Founders Edition, 24 GiB
Identité PCI10de:2204 / subsystem 10de:1454
BDF du GPU0000:01:00.0
Carte mère / BIOSASUS TUF GAMING B650M-PLUS WIFI / BIOS 3057
ProcesseurAMD Ryzen 7 7800X3D
Windows / piloteWindows 11 Home 26200 / NVIDIA 617.14
Mode de démarragex64 UEFI / Secure Boot disabled
PROM SHA-2568ea297373e9e5d3600ff41ad9fae88f2d14c98c017d100669f7333981da673b4

Mesure sur la même carte

Médiane de trois exécutions, CUDA 12.6 / cuBLAS, avant et après le déverrouillage sur la même carte, pilote 617.14. Valeurs en TFLOPS.

ChargeAvantAprèsÉcart
FP1670.55125.91+78.5%
BF1670.53128.70+82.5%

Pourquoi ce n'est pas le module Linux

Les modules Linux de ce site restent installés et s'exécutent à chaque démarrage, activés carte par carte sur la ligne de commande du noyau. Ici, c'est une application UEFI à usage unique, liée à un GUID de partition et à un profil de firmware ; elle déverrouille, chaîne Windows, puis n'est plus résidente. Pas de paramètre noyau, pas de drop-in initramfs, pas de paquet DKMS.

Les limites qui décident de l'essai

Compilé pour un seul PC

L'exécutable est lié au profil PCI/PROM/MMIO mesuré et à une disposition de partitions précise. Une autre machine demande un portage, pas un rapport de compatibilité.

Apportez votre firmware

Les cinq fichiers sont des entrées que vous générez. Sans eux, l'empaquetage échoue au contrôle d'empreinte, et l'installateur ne les fournit pas.

Ne pas contourner les contrôles

Les vérifications préalables existent pour arrêter une exécution sur une machine non conforme. Les sauter, c'est transformer un démarrage raté en écran noir ou en système qui ne démarre plus.

Aucun résultat à long terme

Sont documentés un démarrage réussi, une campagne de mesure et une session Windows. La stabilité à long terme, d'autres jeux et le débit réel en charge restent des questions distinctes et non vérifiées.