Solutore in loco resiliente ai guasti per sistemi lineari

Solutore in loco resiliente ai guasti per sistemi lineari

Il DISI intervista una degli inventori, la Dott.ssa Daniela Loreti.

Pubblicato: 01 luglio 2025 | Innovazione e ricerca

 Una serie di interviste dedicate all’innovazione tecnologica e al pensiero progettuale: esploriamo le storie dietro invenzioni e soluzioni che rispondono a sfide reali. Un’occasione per approfondire processi creativi, approcci metodologici e impatti concreti sul mercato e sulla società.

Autrice di questa intervista è Francesca Montuschi, del Settore della comunicazione e informazione del dipartimento.

L’implementazione di modelli di analisi predittiva (cosa accadrà) e di analisi prescrittiva (cosa fare per fare accadere) è alla base della cosiddetta Data Economy; si caratterizza, in particolare, per la capacità, da parte degli enti di ricerca e delle imprese, di gestire ed elaborare in tempo reale grandi quantità di dati. I sistemi HPC (High Performance Computing), offrendo una accelerazione enorme sui tempi di esecuzione dei software, sono di conseguenza uno strumento indispensabile per modellare fenomeni, analizzare grandi quantità di dati, simulare sistemi complessi. I supercalcolatori oggi includono centinaia di migliaia di nodi computazionali (processori), così tanti da rendere la probabilità di malfunzionamento un elemento affatto trascurabile. Per questo motivo, l’identificazione e la gestione dei guasti che influenzano i calcoli sono diventate recentemente compiti cruciali nello sviluppo delle applicazioni HPC.

Il brevetto, depositato da Daniela Loreti del Dipartimento di Informatica - Scienza e Ingegneria (DISI) e Marcello Artioli di ENEA – Centro di Ricerche Bologna, fa riferimento ad un solutore in loco resiliente ai guasti per sistemi lineari. L’invenzione propone un metodo, appartenente alla classe denominata Algorithm-Based Fault Tolerance (ABFT), per dotare di resilienza ai guasti il processo di soluzione di sistemi lineari, senza incorrere nella svantaggiosa necessità di fermare periodicamente la computazione e senza richiedere, in caso di guasto, il rollback all’ultimo stato salvato (come previsto dai meccanismi di checkpointing). Inoltre, il metodo lavora in-place, ovvero è in grado di risolvere il sistema lineare modificando la matrice in ingresso, minimizzando pertanto l’occupazione di memoria di tutto il processo.

Anche i sistemi algebrici composti da migliaia di equazioni lineari (pervasivi in vari ambiti disciplinari e settori applicativi) sono risolti in modo efficiente sfruttando l'HPC. Voi avete utilizzato il Metodo delle Interdizioni (IMe), un algoritmo specifico per risolvere sistemi di equazioni lineari, e avete studiato come applicarlo e migliorarlo, rendendolo resistente ai guasti, nei sistemi HPC.

Un singolo processore ha tipicamente una probabilità di fault estremamente bassa, dell’ordine di diversi anni. Tuttavia, in un sistema HPC, in cui possono essere presenti centinaia di migliaia di processori, la probabilità che uno di questi si possa guastare durante l’esecuzione di un algoritmo può diventare molto alta. Il più comune approccio alla tolleranza ai guasti nei grandi cluster HPC finora è stato il cosiddetto Checkpoint/Restart (C/R), che suggerisce di salvare a intervalli regolari lo stato dei programmi che comportano una lunga durata. In caso di errore, la computazione può riprendere dall’ultimo stato salvato (effettuando appunto un “rollback”), invece di essere riavviata da zero. In tal modo, l’occorrenza di un fault determina inevitabilmente un ritardo nella computazione che può essere anche piuttosto significativo.

Per questo scopo, nel campo delle applicazioni HPC per l’algebra lineare, abbiamo utilizzato tecniche di Fault Tolerance basate sugli algoritmi ABFT. La tolleranza ai guasti non viene ottenuta tramite checkpoint periodici sui punti di sincronizzazione, ma piuttosto codificando lo stato della computazione in un checksum, una sorta di riassunto molto sintetico, che viene computato una volta sola all’inizio dell’esecuzione e mantenuto costantemente aggiornato con un overhead trascurabile. Nel momento in cui si verifica un guasto su uno qualunque dei processori coinvolti, il suo stato può essere ricalcolato molto velocemente utilizzando le informazioni contenute nel riassunto, senza bisogno di effettuare rollback.

La vostra invenzione utilizza l’algoritmo già esistente IMe, forse non tra i più noti. La conoscenza diffusa degli algoritmi può incidere sulla valorizzazione della PI della vostra invenzione?

Sì, probabilmente. Per risolvere sistemi lineari esistono molti solutori esatti più noti di IMe, per esempio il metodo di Gauss-Jordan che, in generale, può essere implementato in maniera più performante di IMe e che può essere reso resiliente ai guasti utilizzando l’approccio Checkpoint/Restart. Tuttavia, in sistemi in cui i guasti sono relativamente frequenti (come nei sistemi HPC), il metodo da noi proposto risulta preferibile. Tanto più aumenta la probabilità di guasto, tanto più il nostro meccanismo risulta vantaggioso, e quindi più giustificabile l’algoritmo IMe.

L’HPC e accessibilità. Alcuni data center comunitari, in primis il Cineca, consentono ai gruppi di ricerca e alle organizzazioni di prenotare la capacità di calcolo remota su richiesta.

Il bando per l'assegnazione di risorse HPC presso Cineca viene pubblicato periodicamente, solitamente ogni mese, e permette a ricercatori e aziende di accedere a risorse di calcolo avanzate.  I bandi variano, ma tipicamente includono categorie per progetti con differenti esigenze e fondi, come ad esempio il programma denominato Iniziative per Sistemi di Calcolo ad Alte Prestazioni (ISCRA) che offre milioni di ore di calcolo. Le domande vengono valutate in base a criteri di impatto scientifico e fattibilità tecnica. 

HPC e IA, quali gli scenari comuni?

Nell’ambito della strategia europea per IA, stanno nascendo le IA Factory, infrastrutture di calcolo ad alte prestazioni (HPC) progettate per supportare modelli di AI su larga scala. Una di queste è proprio Leonardo.