← Ultimi articoli
💻 computer science

Portable Acceleration of Learning With Errors KEMs for Post-Quantum Cryptography

Questo articolo presenta un'implementazione GPU portabile di un Meccanismo di Incapsulamento delle Chiavi (KEM) basato su Learning With Errors (LWE) utilizzando l'offloading OpenMP Target, dimostrando che un singolo codice sorgente può ottenere una sostanziale accelerazione delle prestazioni ed efficienza energetica su acceleratori sia NVIDIA che AMD evitando il lock-in del fornitore.

Autori originali: Tiziana Liberati, Nitin Shukla, Simone Rizzo, Elisabetta Boella, Matteo Barbieri, Gabriella Bettonte, Daniele Gregori, Marco Pedicini

Pubblicato 2026-07-13
📖 4 min di lettura☕ Lettura da pausa caffè

Autori originali: Tiziana Liberati, Nitin Shukla, Simone Rizzo, Elisabetta Boella, Matteo Barbieri, Gabriella Bettonte, Daniele Gregori, Marco Pedicini

Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo

Immagina di cercare di costruire una cassaforte digitale super sicura che non possa essere violata nemmeno da un futuristico supercomputer "quantistico". Per farlo, devi risolvere un enorme e disordinato rompicapo matematico chiamato "Learning With Errors" (LWE). È come cercare di trovare un ago specifico in un pagliaio, ma il pagliaio è fatto di milioni di minuscoli magneti rumorosi e, più cerchi, più i magneti si muovono.

Il problema? Risolvere questi rompicapi richiede un tempo infinito su un computer normale. È come cercare di spostare una montagna di sabbia un granello alla volta con un cucchiaino. Gli autori di questo articolo si sono chiesti: "E se usassimo una gigantesca e velocissima squadra di costruzione (una GPU) per spostare quella sabbia?"

La Grande Scoperta: Un Codice, Due Squadre
Di solito, se vuoi usare una squadra di costruzione, devi assumere un team specifico (come il CUDA di NVIDIA) e scrivere istruzioni che solo loro capiscono. Se vuoi assumere un team diverso (come AMD), devi riscrivere l'intero manuale di istruzioni. Questo è costoso e fastidioso.

Questo articolo dimostra che puoi scrivere un unico insieme di istruzioni (usando qualcosa chiamato OpenMP Target) che funziona perfettamente sia per la squadra NVIDIA che per la squadra AMD. È come scrivere una ricetta che funziona sia in una cucina con fornelli a gas che in una con fornelli elettrici, senza cambiare un singolo ingrediente.

Il Trucco Magico: Restare in Cucina
Il maggiore spreco di tempo in questi rompicapi matematici è il continuo andare e venire tra il computer principale (la CPU) e la super-veloce GPU. È come uno chef che corre in dispensa per prendere il sale per ogni singolo pizzico di condimento.

Gli autori hanno capito come tenere il "sale" (i numeri casuali necessari per la matematica) proprio dentro la cucina della GPU. Hanno aggiornato uno strumento chiamato RNGonGPU affinché funzioni con entrambe le squadre, NVIDIA e AMD. Ora, la GPU può generare tutti i numeri casuali di cui ha bisogno senza mai lasciare il suo posto. Questo mantiene il flusso di lavoro fluido e veloce.

La Corsa: Chi Vince?
Il team ha testato il loro nuovo metodo su quattro diversi computer super veloci:

  1. NVIDIA A100: Un potente supercomputer standard.
  2. NVIDIA GH200: Un massiccio "SuperChip" dove il cervello (CPU) e il muscolo (GPU) sono incollati insieme da un'autostrada super veloce (NVLink).
  3. AMD MI300X: Un potente supercomputer standard con una enorme banca dati.
  4. AMD MI300A: Un chip dove il cervello e il muscolo condividono esattamente la stessa banca dati.

Ecco cosa hanno scoperto:

  • La Spinta di Velocità: Quando i rompicapi matematici diventavano enormi (con una dimensione di 4.096), la versione GPU era 120 volte più veloce della versione del computer normale. Per rompicapi ancora più grandi (dimensione 16.384), la GPU era ancora fulminante, mentre il computer normale era praticamente addormentato.
  • I Vincitori: Il NVIDIA GH200 è stato il più veloce, finendo il lavoro in circa 60 secondi. L'AMD MI300X è arrivato un attimo dietro, impiegando 85 secondi. Entrambe queste macchine hanno enormi e veloci banche dati (HMB3) che possono versare dati rapidamente.
  • Il Sorprendente Perdente: Potresti pensare che l'AMD MI300A sarebbe stato fantastico perché condivide la memoria tra cervello e muscolo. Invece, è stato il più lento, impiegando 114 secondi. Perché? Perché il cervello e il muscolo stavano combattendo per la stessa cannuccia. Mentre la GPU cercava di spostare i dati, la CPU stava anche facendo i suoi calcoli, e si ostacolavano a vicenda. È come due persone che cercano di bere dalla stessa cannuccia contemporaneamente; nessuno dei due riesce a bere un sorso pieno.

Energia e Calore
Il team ha anche controllato quanta elettricità utilizzavano queste macchine. Il NVIDIA GH200 non solo ha finito più velocemente, ma ha usato meno energia per fare il lavoro. Ha impiegato circa 9,7 kJ di energia per risolvere il rompicapo, mentre l'AMD MI300X ne ha richiesti 26,2 kJ. Ciò significa che la macchina NVIDIA è stata circa 2,5 volte più efficiente dal punto di vista energetico.

Cosa Significa Questo
L'articolo dimostra che non devi scegliere una fazione tra NVIDIA e AMD per ottenere una sicurezza super veloce. Puoi usare un unico codice base per eseguire il lavoro su entrambi. Tuttavia, hanno anche mostrato che avere un chip veloce non è sufficiente; come la memoria è organizzata conta altrettanto. Se il cervello e il muscolo combattono per la stessa memoria, l'intero sistema rallenta.

In breve, gli autori hanno misurato che la sicurezza accelerata tramite GPU e portabile non è solo un sogno — è una realtà che può rendere i lucchetti a prova di quantum molto più veloci ed efficienti, a patto di scegliere l'hardware giusto per evitare ingorghi nella corsia della memoria.

Sommerso dagli articoli nel tuo campo?

Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.

Prova Digest →