AI and High Performance computing

Responsabili scientifici: Prof. Luca Benini, Prof.ssa Elisa Ercolessi

 

Negli ultimi anni diverse tecniche basate sull’intelligenza artificiale sono emerse nel Calcolo ad Alte Prestazioni (HPC), calcolo scientifico e cloud computing. Tali tecniche spaziano dall’automazione dei processi di gestione del centro di calcolo all’ottimizzazione dei codici e dell’uso delle risorse, passando attraverso problematiche trasversali come l’ottimizzazione energetica e delle architetture di calcolo. I sistemi di calcolo ad alte prestazioni vanno anche considerati per il loro ruolo di tecnologia abilitante per l’intero settore della ricerca in intelligenza artificiale, in quanto la creazione di intelligenza artificiale efficiente ed a larga scala è un ingrediente fondamentale dello sviluppo del settore stesso. In questo dominio, una tematica di ricerca chiave di ALMA AI sarà lo sviluppo e realizzazione di infrastrutture HPC ottimizzate per il calcolo basato su intelligenza artificiale (ad esempio addestramento di modelli Deep Learning, soluzione di problemi di ottimizzazione complessi, simulazioni con un largo numero di agenti/componenti, ecc.).

Un altro aspetto dove l’intelligenza artificiale risulta promettente è nel supporto all’esecuzione delle applicazioni che eseguono sui sistemi di calcolo ad alte prestazioni ed al cosiddetto “time to science", ovvero al tempo macchina impiegato per ottenere il risultato del calcolo scientifico. In questo ambito i modelli ottenuti con il deep learning possono essere usati per stimare la durata dell’applicazione scientifica dati i suoi parametri di configurazione software e hardware. Tali modelli possono essere poi usati per aiutare l’utente finale a trovare la configurazione ottima (parallelismo, tipo di architettura, uso di acceleratori, ecc.) e ad adattare in modo autonomo la configurazione delle applicazioni (self-tuning) con grandi benefici in termini di risparmio di tempo, costo energetico e computazionale.

Un'altra direzione di ricerca strategica per ALMA AI è nell’automazione dei centri di calcolo, dove modelli basati sull’intelligenza artificiale sono usati per l’apprendimento del comportamento del sistema da serie di dati storici o simulati al fine di supportare, in tempo reale, sia i gestori del sistema e sia gli utenti finali. L’uso di modelli generati con tecniche di Machine Learning (ML) e di Deep Learning (DL) da serie di dati storici si è dimostrato molto efficace per risolvere le sfide poste dal riconoscimento di anomalie e predizione di guasti.

In aggiunta, in anticipo rispetto alla crescente attenzione sociale ed ambientale riguardante la produzione di gas serra, la comunità scientifica del calcolo ad alte prestazioni ha sviluppato tecnologie per la riduzione dei consumi dell’infrastruttura HPC, sviluppando sia nuovi componenti hardware/software e sia ottimizzando la gestione dei sistemi esistenti. Modelli basati sull’intelligenza artificiale e tecniche di ottimizzazione come la programmazione a vincoli e/o Mixed Integer Linear Programming hanno aperto direzioni promettenti per la riduzione dei consumi dei supercalcolatori. In questo contesto è importante lo sviluppo di modelli accurati capaci di caratterizzare il comportamento elettrico e termico a diverse granularità del sistema di calcolo.

Una lista non esaustiva delle linee di ricerca esplorate da ALMA AI in connessione con il calcolo ad alte prestazioni e ad alto throughput sono:

  • Modelli di Deep Learning per il riconoscimento e la predizione di guasti.
  • Modelli di Machine Learning per la predizione dei consumi dei sistemi ed applicazioni ad alte prestazioni.
  • Modelli di Deep Learning per la predizione della durata delle applicazioni.
  • Modelli di Deep Learning per la predizione dell’evoluzione termica dei sistemi ad alte prestazioni.
  • Modelli e strategie di ottimizzazione per migliorare l’uso e la gestione dei supercalcolatori.
  • L’uso congiunto di tecniche di ottimizzazione e modelli predittivi per la riduzione dei consumi delle infrastrutture di calcolo ad alte prestazioni.
  • Nuove architetture di calcolo efficienti per l’addestramento e l’inferenza di modelli di deep learning.
  • Architetture neuromorfiche di nuova generazione per l’accelerazione dei calcoli di machine learning e dell’intelligenza artificiale.