Die ganze Installation ist: das Paket bauen, einen Parameter zur Kernel-Kommandozeile hinzufügen, neu starten. Diese Anleitung folgt der eigenen README des Projekts, einschließlich der Teile, die Leute sonst gern überfliegen — Verifizierung und Rollback.
Basierend auf der gpu-unlock-README v1.0.0 · Geprüft am 2026-10-25 · Quellprojekt
Bevor du anfängst
Nur Linux. Es gibt keine Windows-Version dieses Moduls. Deine Karte muss ein GA102-, GA103-, GA104- oder GA106-Modell sein (RTX-30-Serie) — prüfe deine zuerst. Das Projekt ist experimentell und inoffiziell; du veränderst, wie deine Hardware beim Booten initialisiert wird. Lies den Rollback-Abschnitt, bevor du anfängst, damit du weißt, dass der Ausweg existiert und einfach ist.
Wofür diese Anleitung gilt
Upstream-Projekt gpu-unlock v1.0.0, wie in seiner README dokumentiert, festgehalten bei Commit af28cbb (2026-10-24), für die Distributionsfamilien, die die README abdeckt (Arch, Debian/Ubuntu, Fedora/RHEL). Eine ehrliche Lücke: Die README dokumentiert kein Verhalten zu Secure Boot oder Modulsignierung — wenn deine Distribution Secure Boot erzwingt, kläre die Signierung für lokal gebaute Module anhand der eigenen Dokumentation deiner Distribution, bevor du neu startest. Und eine ständige Offenlegung: Diese Website hat keine Installation durchgeführt — es gibt hier kein Installationsprotokoll aus erster Hand; diese Schritte sind eine getreue Zusammenfassung der Upstream-README, die die maßgebliche Quelle bleibt.
Bekannte Installations-Vorbehalte
Ubuntu-24.04-Paketierung: Mindestens ein Nutzer hat berichtet, dass make install-deb unter Ubuntu 24.04 an einer nicht erfüllbaren dh-sequence-dkms-Build-Abhängigkeit scheitert, und die Installation stattdessen manuell abgeschlossen — siehe Upstream-Issue #59, bevor du deinen eigenen Workaround improvisierst.
Verifiziere, dass das Opt-in wirklich gelandet ist: Prüfe nach dem Bearbeiten deiner Bootloader-Konfiguration nach dem Neustart cat /proc/cmdline. Cloud-Images und neu generierte Boot-Einträge können Bootloader-Einstellungen überschreiben und den Parameter still fallen lassen.
lspci -D aus und notiere sie (z. B. 0000:21:00.0). Du brauchst sie, wenn du bestimmte Karten gezielt ansprichst, und so verifizierst du hinterher.cat /proc/cmdline) an einem Ort, den du offline erreichen kannst, damit du sie exakt wiederherstellen kannst.all — benenne die Karten, die du meinst, und lass den Rest unberührt.make install erkennt sie automatisch aus /etc/os-release. Bei anderen Distributionen nutze die expliziten Build-Ziele unten.Hinweis: Der Klon zieht den aktuellen Default-Branch, der neuer sein kann als der Commit, gegen den diese Anleitung geprüft wurde (af28cbb).
git clone https://github.com/Zagitta/gpu-unlock
cd gpu-unlock
make install
make install erkennt deine Distribution und wählt den richtigen Installer. Die expliziten Varianten sind:
make install-arch # makepkg -sif
make install-deb # apt-get build-dep, dpkg-buildpackage, apt-get install
make install-rpm # dnf builddep, rpmbuild, dnf install
make arch, make deb und make rpm bauen Pakete, ohne sie zu installieren (Debian- und RPM-Pakete landen in build/deb und build/rpm). Die Installation legt das Modul und seine Firmware in deine initramfs — bei mkinitcpio platziert ein Drop-in gpu_unlock unmittelbar vor nvidia in MODULES, damit eine Anzeigekarte so kurz wie möglich dunkel bleibt; initramfs-tools und dracut haben gleichwertige Drop-ins. Die Images werden bei der Installation neu gebaut.
Das Modul ist träge, bis du ihm sagst, welche Karten es freischalten soll. Hänge gpu_unlock.targets=all an deine Kernel-Kommandozeile an und behalte deine bestehenden Optionen:
GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub hinzu und führe dann sudo update-grub aus.sudo grub-mkconfig -o /boot/grub/grub.cfg ausführen.sudo grubby --update-kernel=ALL --args="gpu_unlock.targets=all" aus.options-Zeile in deinem Boot-Eintrag an (bootctl status zeigt, wo er liegt)./etc/kernel/cmdline hinzu und generiere deine Boot-Images neu (z. B. sudo mkinitcpio -P für mkinitcpio-UKIs).Statt all kannst du bestimmte Karten per vollständiger PCI-Adresse benennen, so wie lspci -D sie ausgibt:
gpu_unlock.targets=all # every unbound GA102/103/104/106 card
gpu_unlock.targets=0000:21:00.0 # only this card
gpu_unlock.targets=0000:21:00.0,0000:22:00.0 # comma-separated list
Adressen sind unabhängig von GPU-Nummerierung und Anzeigerolle. Alles, was keine GA102/GA103/GA104/GA106-Karte ist — einschließlich einer Mischung aus all und Adressen — wird protokolliert und ignoriert. Die Freischaltung dauert insgesamt etwa eine Sekunde, egal wie viele Karten du hast; jede Karte wird für sich behandelt, und eine Karte, die bereits gebunden oder abgeschaltet ist, wird übersprungen.
Starte neu und prüfe dann das Kernel-Log:
journalctl -k -b | grep gpu_unlock
lspci -nnk -s 0000:21:00.0 # your card's address
Führe danach deinen üblichen FP16/BF16-Workload oder GEMM-Benchmark aus und vergleiche. Ein paar Verhaltensweisen, die man kennen sollte:
nvidia-drm übernimmt — dasselbe, was der Treiber einen Moment später auch tun würde.gpu_unlock.resume=0 abschalten. Der Ruhezustand (Hibernation) ist nicht abgedeckt.Der normale Ausstieg ist ein Parameter
Entferne gpu_unlock.targets= aus deiner Kernel-Kommandozeile und starte neu — es findet keine Freischaltung statt. Für einen einmaligen Stock-Boot lösche den Parameter stattdessen im Bearbeitungsbildschirm deines Bootloaders. Das Entfernen der Pakete entfernt auch das Modul und die initramfs-Drop-ins. Konstruktionsbedingt wird an der Karte, ihrer Firmware oder dem NVIDIA-Treiber nichts dauerhaft verändert — das ist der Rollback-Pfad, den die Upstream-Dokumentation beschreibt.
Ein Fehlermodus, den du respektieren solltest: Wenn die auf einer Karte laufende Firmware nie stoppt, protokolliert das Modul das und behält absichtlich die DMA-Puffer, die diese Firmware möglicherweise noch nutzt, bis zum nächsten Ausschalten. Schalte vollständig aus, bevor du es erneut versuchst — pfusche nicht weiter daran herum.
Das Kernelmodul und die lokale Paketierung stehen unter GPL-2.0-only. Die generierte Payload leitet sich von der festgelegten CMP-Referenz ab; die NVIDIA-Firmware bleibt unter ihren eigenen Bedingungen — siehe die Verzeichnisse firmware/NOTICE.md und licenses/ des Projekts für die Zuordnung. Wenn es für dich funktioniert, verlinkt die Projektseite Wege, seinen Autor zu unterstützen.
Ein Problem gefunden — oder eine Karte, die funktioniert?
Das Projekt bittet ausdrücklich um Kompatibilitätsberichte — ob es funktioniert hat oder nicht. Gerade für GA103-Karten gibt es noch keine Berichte. Deinen einzureichen ist der schnellste Weg, diese Liste genauer zu machen.