Nvidian GPU-unlock: viisi vaihetta nopeampaan esitäyttöön
Nvidian kuluttajanäytönohjainten BF16-teholukko aukeaa Linuxissa muutamassa minuutissa. Opas käy viidessä vaiheessa läpi tuen tarkistamisen, asennuksen, käyttöönoton ja esitäytön mittaamisen.
Nvidian kuluttajanäytönohjaimet laskevat BF16-muodon kertolaskuja vajaalla nopeudella. Yhteisön kehittämä GPU-unlock-ydinmoduuli avaa täyden nopeuden ennen Nvidian ajurin käynnistymistä, ja Digital Spaceportin neljän RTX 3090:n kokoonpanossa se nosti esitäytön noin 60 prosenttia. Tämä opas käy viidessä vaiheessa läpi tuen tarkistamisen, asennuksen, käyttöönoton, varmistuksen ja mittauksen.
Katso video: teholukko neljällä 3090:lla
Digital Spaceportin videolla ajetaan esitäyttömittaus neljällä RTX 3090:lla ennen teholukkoa ja sen jälkeen sekä näytetään, miten lukko otetaan käyttöön Proxmoxissa.
Mitä GPU-unlock tekee
Nvidian GeForce-korteissa on pitkälti samat tensorisuorittimet kuin yhtiön ammattikorteissa, mutta kuluttajakorteissa FP16- ja BF16-kertolaskujen aloitusnopeus on rajoitettu. Suoritin ottaa vastaan vähemmän laskuoperaatioita samassa ajassa kuin vastaava ammattikortti. GPU-unlock kirjoittaa näytönohjaimen nopeusvalitsinrekistereihin arvot SS0 0x88888888 ja SS1 0x8 ennen kuin Nvidian ajuri sitoo kortin itseensä. Nämä arvot valitsevat täyden BF16-nopeuden.
Kyse ei ole näytönohjaimen oman firmwaren eli VBIOSin muuttamisesta eikä Nvidian ajurin paikkaamisesta. Moduuli ladataan ydinmoduulina initramfs-vaiheessa, ennen kuin Nvidian ajuri käynnistyy. Siksi se säilyy myös ajuripäivitysten yli. Initramfs on pieni väliaikainen tiedostojärjestelmä, joka ladataan ennen varsinaista käyttöjärjestelmää.
Vaikutus on käskyjen aloitusnopeudessa, ei suoraan sovelluksen nopeudessa. Zagittan repositorion mittauksissa RTX 3090 Ti:n BF16-GEMM nousi 87,5 teraflopista 157,4 teraflopiin. GEMM tarkoittaa matriisikertolaskua, jota tekoälymallin laskenta pääosin on. RTX 3090:llä BF16-GEMM kasvoi käyttäjäraporteissa 25–67 prosenttia, RTX 3060:llä noin 80 prosenttia ja RTX 3070:llä 73–81 prosenttia. Kasvu riippuu voimakkaasti kortin tehorajasta: 225 wattiin rajoitettu 3090 jäi 25 prosenttiin.
Lukko ei lisää VRAMia eikä nopeuta vastauksen tuottamista sana sanalta. Se ei myöskään ole kaksinkertainen sovellusnopeus: kyse on siitä, että laskentayksiköt saavat enemmän töitä samassa ajassa. Paikallisen mallin pystyttämisestä kerrotaan tarkemmin aiemmassa oppaassamme.
Esitäyttö ja dekoodaus: miksi juuri esitäyttö nopeutuu
Kielimallin vastaus syntyy kahdessa vaiheessa. Esitäytössä malli lukee koko kehotteen kerralla ja laskee siitä sisäisen tilan. Tämä vaihe on laskentatehosta riippuvainen: mitä enemmän tensorisuorittimen laskuja sekunnissa ehtii käynnistyä, sitä nopeammin esitäyttö etenee. Dekoodauksessa malli tuottaa vastauksen yksi tokeni kerrallaan, ja sitä vaihetta rajoittaa laskennan sijaan muistin kaistanleveys.
Käytännössä esitäyttö näkyy aikana, joka kuluu ennen ensimmäistä vastausmerkkiä (TTFT, time to first token). Agenttityössä työkalujen kuvaukset, tiedostot ja aiempi keskustelu voivat viedä kymmeniä tuhansia tokeneita, joten esitäyttö on usein suurin yksittäinen viive. Siksi lukko, joka nopeuttaa juuri matriisilaskentaa, osuu kysynnän kannalta olennaiseen kohtaan.
Jos työsi on lyhyiden kysymysten esittämistä ja pitkien vastausten lukemista, hyöty jää pieneksi. Jos ajat pitkiä konteksti-ikkunoita tai agenttia, joka lukee paljon tiedostoja ennen ensimmäistä vastaustaan, ero voi tuntua selvästi.
Mitkä näytönohjaimet ovat tuettuja
Lukko on toteutettu erikseen kolmelle sukupolvelle. Kortin sukupolvi ratkaisee, mikä repositorio ja mikä käynnistysvalitsin sinun pitää valita.
| Sukupolvi | Kortit | Repositorio | Huomiot |
|---|---|---|---|
| Turing (TU102) | RTX 2080 Ti 22 Gt | KohakUnlock | Tutkimuskoodi, ei valmis asennuspaketti. 22 Gt:n kortit on itse modattu muistiltaan. |
| Ampere (GA102–GA106) | RTX 3090, 3090 Ti, 3080, 3080 Ti, 3070, 3070 Ti, 3060 12 Gt | Zagitta/gpu-unlock | Valitsin gpu_unlock.targets=all. RTX 3080 Ti 20 Gt OEM -kortilla lukko meni päälle, mutta BF16 jäi puolinopeuteen. |
| Ada (AD102–AD107) | RTX 4090 vakiona; 4080, 4070, 4060 ja kannettavat kokeellisina | gpu-unlock-ada | Muut kuin 4090 vaativat oman kokeellisen valitsimen ja tarkan PCI-osoitteen. |
| Blackwell (RTX 50) | Ei toistaiseksi tuettuja | — | Julkista toteutusta ei toistaiseksi ole. |
Kannettavissa korteissa valmistaja- ja mallikohtaiset erot ovat suuria, eikä yhdellä mallilla saatu tulos siirry toiseen. Ammattikortit (RTX A -sarja) ja datakeskuskortit eivät ole tuettujen listalla. RTX 2080 Ti:n polku on tutkimuskoodia: repositorio ei asenna moduulia automaattisesti eikä jaa firmwarea, joten se sopii lähinnä kokeneelle kokeilijalle.
Viisi vaihetta: näin otat teholukon käyttöön
Alla oleva ohje on Ampere-korteille, esimerkkinä RTX 3090. Ada-korteilla repositorio ja kokeelliset valitsimet vaihtuvat, mutta työjärjestys on sama. Tarvitset root-oikeudet koneeseen, jossa kortti on fyysisesti kiinni.
Vaihe 1: Tarkista kortti ja PCI-osoite
nvidia-smi --query-gpu=name,pci.bus_id --format=csv
lspci -Dnnk | grep -A 3 -i nvidia
Ensimmäinen komento listaa kortit ja niiden PCI-osoitteet. Toinen näyttää, mikä ajuri korttia käyttää. Osoite muodossa 0000:21:00.0 yksilöi kortin; tarvitset sitä, jos haluat avata lukon vain tietyille korteille. all-valitsin avaa kaikki tuetut kortit.
Vaihe 2: Rakenna ja asenna paketti
sudo apt install -y git build-essential
git clone https://github.com/Zagitta/gpu-unlock.git
cd gpu-unlock
make install
make install tunnistaa jakeluperheen ja valitsee asennustavan. Debianissa ja Ubuntussa se rakentaa .deb-paketin ja asentaa sen. Jos haluat vain rakentaa, aja make deb ja asenna syntynyt paketti komennolla sudo dpkg -i build/deb/*.deb. Koneessa pitää olla kernelin otsikkotiedostot ja DKMS-työkalut.
Käännös tarvitsee verkkoyhteyden, koska se hakee Nvidian kiinnitetyt lähde- ja binääritiedostot ja tarkistaa niiden SHA-256-tiivisteet. Firmware luodaan omalla koneella; valmiita firmware-paketteja ei jaeta. Asenna ja testaa ensin toimiva Nvidian ajuri, jotta tiedät kortin toimivan ilman lukkoa.
Ada-korteilla repositorio on gpu-unlock-ada ja komennot ovat samat. RTX 4090 toimii oletusasetuksilla; muut Ada-kortit vaativat kokeellisen valitsimen, joka kerrotaan repositorion taulukossa.
Vaihe 3: Salli lukko kernelin käynnistysrivillä
Moduuli ei tee mitään ilman käynnistysrivin valitsinta. Lisää valitsin olemassa olevaan riviin äläkä korvaa muita asetuksia. Proxmoxissa käynnistysrivi on tiedostossa /etc/kernel/cmdline:
cat /etc/kernel/cmdline
sudo nano /etc/kernel/cmdline
sudo proxmox-boot-tool refresh
Lisää rivin loppuun välilyönnillä erotettuna gpu_unlock.targets=all. Proxmoxin käynnistyslataimen yksityiskohdat löytyvät Proxmoxin dokumentaatiosta.
Debianissa, Ubuntussa ja Linux Mintissä käytössä on yleensä GRUB. Lisää sama valitsin tiedoston /etc/default/grub rivin GRUB_CMDLINE_LINUX_DEFAULT lainausmerkkien sisään ja päivitä käynnistyslataimen asetukset:
sudo nano /etc/default/grub
sudo update-grub
Fedoraan ja RHEL:ään valitsin lisätään yhdellä komennolla: sudo grubby --update-kernel=ALL --args="gpu_unlock.targets=all". Jos haluat rajata lukon yhteen korttiin, käytä muotoa gpu_unlock.targets=0000:21:00.0. Älä sekoita all-valitsinta ja osoitteita samaan riviin.
Vaihe 4: Sammuta kone ja käynnistä uudelleen
Ensimmäisellä kerralla sammuta kone ja käynnistä se uudelleen virtakytkimestä. Pelkkä warm reboot ei välttämättä palauta kortin firmware-tilaa, jota lukko tarvitsee. Käynnistyksen alussa initramfs lataa gpu_unlockin ennen nvidia-ajuria. Jos ajuri ehtii sitoa kortin ensin, moduuli ei voi enää tehdä mitään.
Kun lukko on todettu toimivaksi, tavallinen uudelleenkäynnistys riittää useimmilla korteilla. Jos kone ei käynnisty, valitse käynnistyslataimesta vanha ydin ja poista valitsin käynnistysriviltä.
Vaihe 5: Varmista lukko ja mittaa tulos
journalctl -k -b | grep gpu_unlock
lspci -nnk -s 0000:21:00.0
Etsi lokista rivi gpu_unlock: unlocked sekä valittujen korttien tarkistukset. lspci näyttää, että käytössä on nvidia-ajuri. Pelkkä moduulin latautuminen ei todista lukkoa: lopullinen todiste on mittaus. Jos merkintää ei tule, tarkista cat /proc/cmdline ja se, että moduuli on initramfsissa komennolla lsinitramfs /boot/initrd.img-$(uname -r) | grep gpu_unlock.
Mittaa esitäyttö ennen ja jälkeen
Digital Spaceport julkaisi skriptin, joka mittaa esitäytön nopeuden viidellä syvyydellä: 2K, 16K, 32K, 64K ja 128K. Jokainen syvyys on oma pyyntö, jossa on enintään yksi vastaustokeni ja ainutlaatuinen siemen, jotta välimuisti ei lyhennä mittausta. Skripti laskee esitäytön nopeuden jakamalla palvelimen ilmoittaman kehotetokenien määrän ensimmäiseen vastausriviin kuluneella ajalla.
nano prefill-bench.sh
chmod +x prefill-bench.sh
./prefill-bench.sh
Kopioi skriptin sisältö sivulta digitalspaceport.com/gpu-unlock. Vaihda alusta muuttujat ENDPOINT, API_KEY ja DEFAULT_MODEL omiksi. Voit antaa osoitteen ja syvyydet myös komentoriviltä: ./prefill-bench.sh http://192.168.1.10:9876/v1 2048 16384. Skriptin oletusosoite ja avain ovat tekijän oman ympäristön esimerkkejä, eivät valmiita arvoja.
Aja mittaus ennen asennusta ja sen jälkeen samalla mallilla, samalla tehorajalla ja samalla kvantisoinnilla. Muuten ero ei kerro lukosta. Kirjaa myös, montako rinnakkaista pyyntöä ajat: tässä mittauksessa rinnakkaisuus oli yksi.
Mitä mittauksissa näkyi
Digital Spaceportin kokoonpanossa oli neljä RTX 3090 -korttia ja mallina Qwen 3.8, jossa on 27 miljardia parametria ja joka ajettiin BF16-tarkkuudella. Alla ovat sivuston taulukon luvut tokeneina sekunnissa.
| Esitäytön syvyys | Ennen (tok/s) | Jälkeen (tok/s) | Muutos |
|---|---|---|---|
| 2K | 1 157 | 1 840 | +59 % |
| 16K | 1 259 | 2 020 | +60 % |
| 32K | 1 240 | 2 001 | +61 % |
| 64K | 1 195 | 1 918 | +61 % |
| 128K | 1 114 | 1 769 | +59 % |
Parannus oli siis 59–61 prosenttia kaikilla syvyyksillä. Videon otsikko lupaa 62 prosenttia; taulukon luvuista laskettu ero pyöristyy 59–61 prosenttiin. Tärkeämpää kuin yksittäinen luku on, että parannus säilyi myös 128K:n syvyydessä, jossa esitäyttö on hitainta.
Koko mallin nopeus ei kasva samassa suhteessa. Repositorion käyttäjäraporteissa esitäyttö parani 14–36 prosenttia ja BF16-GEMM 25–80 prosenttia kortista ja tehorajasta riippuen. RTX 4090:llä instruktiotason nopeus kaksinkertaistui, mutta cuBLAS-GEMM kasvoi 12–34 prosenttia muodosta riippuen. Yhdessä 4090-mittauksessa kvantisoitu asiantuntijamalli ei hyötynyt lainkaan: 8K:n esitäyttö oli 0,983-kertainen, koska kvantisoidut matriisikertolaskut eivät käytä FP32-kertymää. FP32-kertymä tarkoittaa, että laskun välitulos säilytetään 32-bittisenä tarkkuuden vuoksi.
Riskit ja rajat
- Kyse on etuoikeutetusta firmware-kutsusta näytönohjaimelle. Se voi jumittaa kortin tai koko koneen, estää käynnistyksen, turmella dataa tai vahingoittaa laitteistoa. Palautumistakuuta ei ole.
- Pidä fyysinen näyttö tai BMC-konsoli ja virtakytkin käsillä. Älä kokeile tuotantokoneessa äläkä keskeneräisen työn aikana.
- Nvidia ei tue tätä. Takuu ja yritys- tai vuokrapalvelinten käyttöehdot voivat estää sen.
- Lukkoa ei ole toistaiseksi RTX 50 -sarjalle eikä ammattikorteille. Se ei nosta VRAMia: 22 Gt:n RTX 2080 Ti -kortit ovat itse modattuja.
- Ampere-moduulin ohjeen mukaan suspend-to-RAM sammuttaa kortit ja nollaa valitsimet; moduuli avaa lukon herätyksen yhteydessä uudelleen. Hibernatia ei tueta.
- Dekoodaus ja INT8-laskenta pysyvät suunnilleen ennallaan. Kvantisoitu päättely voi hyötyä vähän tai ei lainkaan.
- Kokeile vain omalla laitteella ja omalla vastuulla. Tarkista repositorion lisenssi ja Nvidian firmware-ehdot ennen käyttöä.
Lähteet
- Zagitta. gpu-unlock: Unlock FP/BF16 instruction issue rate on Nvidia 3000’s cards. GitHub, päivitetty 24.10.2026.
- JustAResearcher. gpu-unlock-ada: GPU tensor unlock source for RTX 4090 and experimental Ada GPUs. GitHub, päivitetty 26.10.2026.
- KohakuBlueleaf. KohakUnlock: NVIDIA tensor-compute unlock research. GitHub, päivitetty 26.10.2026.
- Digital Spaceport. NVIDIA GPU UNLOCK 3090 4090 2080ti. Verkkosivu, 26.10.2026.
- Digital Spaceport. Nvidia GPU UNLOCK for Local AI – 3090’s Prefill 62% FASTER!. YouTube, 26.10.2026.
- NVIDIA. CUDA C++ Programming Guide.
- vLLM. Optimization.
- Proxmox. Host Bootloader.
- Kansikuva: Adam Kapetanakis, RTX 3090 Founders Edition, Wikimedia Commons, CC BY-SA 4.0.
Vastuuvapauslauseke: Tämä artikkeli on tarkoitettu vain tiedotustarkoituksiin. Sitä ei tarjota tai ole tarkoitettu käytettäväksi oikeudellisena, verotuksellisena, sijoitus-, rahoitus- tai muuna neuvona.
Mainos: alla on kumppanimainoksia ja mainoslinkkejä.

