Che cos’è GPU‑Unlock e come è nato
GPU‑Unlock è un modulo del kernel Linux rilasciato sotto licenza GPL‑2.0. Sviluppato da Zagitta – il nome con cui l’autore è noto su GitHub – il progetto è stato creato il 18 ottobre e, al 25 ottobre, conta 5 619 stelle e 601 fork, oltre a più di cento segnalazioni o pull request aperte.
Il modulo agisce sulla velocità con cui le GPU Nvidia RTX serie 30 eseguono le istruzioni FP16 e BF16, due formati numerici a 16 bit alla base della maggior parte delle operazioni di intelligenza artificiale moderna. Importante sottolineare che l’intervento riguarda il timing delle istruzioni, non la memoria.
Il progetto non si limita più alle RTX 30: sono disponibili fork anche per le serie 40 e 20, con segnalazioni di una RTX 4090 il cui picco raddoppia ma ottiene guadagni dal 12 % al 34 % nelle operazioni GEMM.
Come funziona il modulo su RTX 30
Meccanismo di sblocco
Secondo il README, le schede GeForce serie 30 lanciano le istruzioni FP16 e BF16 con accumulo in FP32 (passo che evita la perdita di precisione) a metà della velocità delle controparti professionali. GPU‑Unlock rimuove questo limite, raddoppiando la cadenza di emissione per le GPU basate sui chip GA102, GA103, GA104 e GA106 – dalla RTX 3090 Ti fino alla RTX 3060 12 GB.
Il modulo viene caricato nell’initramfs, l’immagine di avvio di Linux, prima del driver Nvidia. Scrive due selettori di velocità, reimposta la scheda e poi lascia che il driver, rimasto invariato, la gestisca. Non si tratta quindi né di un’applicazione UEFI né di un driver modificato, il che significa che non è necessario ricreare il patch ad ogni aggiornamento del driver.
Il progetto suggerisce di combinare la tecnica del “CMP unlocker” con il timing dell’approccio UEFI. La community di Reddit r/LocalLLaMA associa GPU‑Unlock alla CMP 170HX, la scheda di mining Nvidia per la quale esisteva già un sblocco analogo.
Benchmark e guadagni misurati
Prestazioni su operazioni GEMM
Nel benchmark di moltiplicazione di matrici (GEMM) su una RTX 3090 Ti a 450 W, i risultati riportati nel README mostrano:
- BF16: da 87,5 a 157,4 TFLOPS (+68‑80 %)
- TF32: da 42,6 a 82,6 TFLOPS (+94 %)
- FP16: da 87,5 a 118,4 TFLOPS (+35 %)
Queste sono mediane di cinque campioni con accumulo in FP32.
Guadagni per modello di scheda
| Modello | Guadagno BF16 in GEMM |
|---|---|
| RTX 3090 Ti | +68‑80 % |
| RTX 3090 | +25‑67 % |
| RTX 3080 10 GB | +70‑73 % |
| RTX 3080 20 GB (memoria aumentata) | +56‑59 % |
| RTX 3070 | +73‑81 % |
| RTX 3060 12 GB | ≈ +80 % (da pull request) |
È importante notare che questi dati provengono da benchmark diversi e non sono comparabili riga per riga. Il +25 % della RTX 3090, ad esempio, è stato ottenuto su una scheda limitata a 225 W, dove la restrizione di potenza influisce notevolmente sul risultato.
La RTX 3080 Ti da 20 GB (versione OEM) appare sbloccata ma con BF16 ancora a metà velocità. La RTX 3070 Ti non è stata testata, e per le GPU GA103 non esistono rapporti.
Impatto sui Large Language Model (LLM) locali
Prefill vs decode
GPU‑Unlock accelera il prefill – la fase in cui il modello legge il prompt – dal 14 % al 36 % nei quattro rapporti citati nel README. La fase di decode, ossia la generazione dei token successivi, rimane invariata perché dipendente dalla larghezza di banda della memoria, non dal calcolo.
Il lavoro in INT8 (interi a 8 bit) resta anch’esso fermo. Gli utenti che hanno confrontato le uscite prima e dopo l’applicazione del modulo le hanno trovate identiche bit per bit, confermando che la precisione non subisce variazioni.
Feedback della community
Nel thread di r/LocalLLaMA, un utente segnala circa il 15 % di miglioramento del prefill su una RTX 3080 20 GB modificata; un altro cita un incremento del 10‑15 % in inferenza senza differenze sul decode, ma afferma di aver ottenuto un aumento del 50‑55 % di TFLOPS per passo durante l’addestramento LoRA senza limiti di potenza.
Il “doppio” menzionato in alcuni titoli (ad esempio “prefill fino a 2×”) riguarda la velocità di emissione delle istruzioni, non la velocità complessiva del modello. Un dato circolante è di 381 token al secondo su Qwen‑3.8‑27B con una RTX 3090, ma per Wccftech quel salto deriva da altre ottimizzazioni (MTP e DFlash), non dal solo sblocco.
Per chi lavora con contesti lunghi – agenti di programmazione, documenti di migliaia di righe, Retrieval‑Augmented Generation – il prefill rappresenta la parte più lenta; un miglioramento del 30 % è percepito come significativo. Per chi usa prompt brevi, l’effetto è quasi trascurabile.
Limiti e considerazioni pratiche
Benchmark sintetici vs carico reale
I guadagni del 25‑80 % sono ottenuti in benchmark sintetici (GEMM) con diverse soglie di potenza. In scenari reali, il miglioramento del prefill varia tra il 10 % e il 36 %, e nulla “raddoppia”.
Non esistono verifiche indipendenti da parte di media o laboratori; i dati provengono da segnalazioni di utenti nel repository e devono ancora essere replicati con prompt, modelli e potenze dichiarate. È consigliabile misurare le proprie prestazioni prima di fare affidamento sui numeri pubblicati.
Supporto per altre serie
Per le RTX 40 e le GPU portatili, esistono solo pull request sperimentali e testimonianze non verificate. Chi possiede una scheda al di fuori delle serie elencate nella tabella non può presumere un funzionamento corretto.
Procedura di installazione e possibili problemi
Requisiti di base
GPU‑Unlock è gratuito e open source, ma richiede:
- Una scheda Nvidia RTX serie 30
- Un PC con Linux (supporto ufficiale per Arch, Debian, Ubuntu, Fedora, RHEL)
- Privilegi di amministratore
- Modifica della linea di comando del kernel
- Riavvio del sistema
Il README non fornisce garanzie: l’installazione avviene a proprio rischio.
Passi di installazione
git clone https://github.com/Zagitta/gpu-unlock
cd gpu-unlock
make
sudo make install
aggiungere al kernel command line
gpu_unlock.targets=all
Il modulo non ha effetto se la scheda è già gestita dal driver Nvidia; caricarlo manualmente dopo l’avvio non serve. Se la GPU è collegata a un monitor, lo schermo resterà nero dalla reimpostazione fino al caricamento di nvidia-drm.
Comportamento in standby e ibernazione
Dopo una sospensione in RAM, i selettori tornano a zero e il modulo li riapplica prima del risveglio, aggiungendo circa un secondo di latenza. L’ibernazione non è supportata. Se il firmware della scheda non si arresta, il modulo registra l’errore e mantiene i buffer DMA fino allo spegnimento; è quindi consigliabile spegnere il PC piuttosto che metterlo in standby.
Garanzia e firmware
GPU‑Unlock interviene sul firmware della scheda prima del driver Nvidia. Chi ha una scheda ancora in garanzia o dipendente da un lavoro critico dovrebbe valutare attentamente i rischi, poiché l’intervento non è coperto da Nvidia.
Il progetto è in evoluzione: pull request recenti mirano a supportare la RTX 3050 portatile e una versione sperimentale per la RTX 4060 portatile, con meccanismi di sicurezza aggiuntivi.
Effetto sul mercato dell’usato
Quando una soluzione gratuita prolunga la vita di una GPU più vecchia, il mercato dell’usato ne sente l’impatto. Secondo Wccftech, il prezzo medio di una RTX 3090 è passato da circa 1 000 USD a oltre 2 000 USD; le RTX 3090 Ti sono quotate su eBay intorno ai 2 650‑3 000 USD. Anche le RTX 3080 hanno visto un rialzo di valore, soprattutto per le versioni con memoria aumentata, poiché gli utenti cercano di sfruttare al massimo le capacità di calcolo offerte da GPU‑Unlock.
Conclusioni
GPU‑Unlock rappresenta una svolta interessante per gli appassionati di IA locale che possiedono una RTX 30. Il modulo consente di sfruttare le istruzioni FP16 e BF16 a velocità quasi pari a quelle delle GPU professionali, senza dover modificare il driver Nvidia. I miglioramenti più evidenti si registrano nella fase di prefill dei LLM, con incrementi dal 14 % al 36 %, mentre la generazione dei token rimane limitata dalla larghezza di banda della memoria.
Tuttavia, i guadagni riportati sono basati su benchmark sintetici e segnalazioni non verificate; è consigliabile effettuare test personalizzati prima di fare affidamento sui risultati. Inoltre, l’intervento sul firmware può invalidare la garanzia e comportare rischi di stabilità, soprattutto su sistemi portatili o su GPU non ancora supportate ufficialmente.
In sintesi, per chi è disposto a sperimentare, a gestire un ambiente Linux e a valutare i potenziali rischi, GPU‑Unlock offre un modo gratuito per estendere le capacità di calcolo delle proprie RTX 30, prolungandone la vita utile nel contesto dell’intelligenza artificiale locale.
