Sintesi del progetto
Yambo è un software di riferimento a livello internazionale per lo studio delle eccitazioni elettroniche nei materiali. Il progetto si è concentrato sull’ottimizzazione del codice, che è stato adattato per l’esecuzione su architetture GPU, e sull’aggiunta di nuove funzionalità scientifiche, trasformando Yambo in uno strumento pienamente pronto per la produzione su sistemi HPC avanzati.
Obiettivo
L’obiettivo del progetto è rendere Yambo accessibile e performante per la comunità italiana e internazionale che opera nel campo della struttura elettronica, e in particolare per lo studio degli stati eccitati con approcci a molti-corpi.
Problemi e necessità
I calcoli di stato eccitato sono tra i più onerosi in fisica della materia condensata. L’adozione di nuove architetture HPC, in particolare GPU, richiede un intenso lavoro di adattamento alle architetture accelerate (porting), ottimizzazione e manutenzione del software, senza il quale l’accesso a queste risorse resterebbe limitato.
Soluzioni sviluppate
Nell’ambito del progetto sono state implementate nuove funzionalità scientifiche ampliando il campo di applicazioni del codice. Il porting è stato reso possibile mediante una strategia di performance portability che utilizza tre modelli di programmazione supportati da una libreria dedicata sviluppata internamente.
mpatti
Yambo consente alla comunità scientifica di studiare in modo accurato proprietà ottiche e processi di eccitazione in materiali avanzati e sistemi bidimensionali, fondamentali per settori come quello energetico, dei dispositivi optoelettronici, e per la scienza dei semiconduttori. L’ottimizzazione del codice su GPU non solo riduce i costi computazionali, ma contribuisce a un uso più sostenibile dell’HPC grazie a un migliore rapporto prestazioni-per-watt. Il miglioramento di questo software rappresenta anche un valore per la comunità internazionale della scienza dei materiali, garantendo la possibilità di condurre ricerche avanzate su questioni scientifiche di grande rilevanza tecnologica.
Settori di applicazione
Il progetto ha ricadute immediate per i ricercatori attivi nella Fisica della Materia, nella Chimica Teorica, nei Materiali per l’Energia e nelle Nanotecnologie. L’approccio open-source permette a università, centri di ricerca, aziende high-tech e gruppi industriali di riutilizzare il codice, adattarlo o integrarne parti in altri progetti scientifici. Anche gli sviluppatori possono trarre vantaggio dalle strategie di porting GPU e dalle lezioni apprese nel progetto, che costituiscono oggi una base di conoscenza preziosa per chi sviluppa software scientifico su HPC avanzato.