Calcolo eterogeneo, le competenze italiane per i computer del futuro

Rendere più potenti i computer del futuro sfruttando al meglio le risorse hardware. Questo l'obiettivo del progetto europeo Paraphrase a cui ha partecipato l'Università di Pisa.

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Il tema del calcolo eterogeneo è importante non solo in ambito consumer ma anche e soprattutto in quello della ricerca. L'uso di hardware differente da allocare a compiti specifici potrebbe infatti velocizzare studi che una volta, basandosi sulle sole capacità dei comuni processori, avrebbero richiesto molto più tempo.

Già da molti anni i core grafici (GPU) composti da centinaia di unità sono usati in ambito scientifico per realizzare un'elevatissima mole di calcoli in parallelo, in affiancamento alle tradizionali CPU. Questo modus operandi, più in piccolo, è quello che sta spingendo da anni AMD con le proprie APU e la specifica HSA, solo per citare un esempio tra i più noti.

hsa amd

Anche l'Italia, e più in particolare l'Università di Pisa, sono però partecipi di questo cambio di paradigma. Si è infatti appena concluso il progetto europeo "Paraphrase" (Parallel Patterns for Adaptive Heterogeneous Multicore Systems) a cui ha partecipato l'Ateneo toscano insieme a partner accademici e industriali.

Del costo di 3,5 milioni di euro di euro e della durata di quattro anni (da ottobre 2011), il progetto si è concentrato su come permettere agli sviluppatori di sfruttare le nuove risorse a disposizione. "I computer del futuro saranno costituiti da migliaia o addirittura milioni di processori, non necessariamente tutti uguali, il che porrà ai programmatori il problema di riuscire a sfruttarli al massimo per ottimizzarne le prestazioni".

"Il dipartimento di informatica - ha spiegato il professore Marco Danelutto dell'Ateneo pisano - ha contribuito al progetto con la sua ultra decennale esperienza nello sviluppo di ambienti di programmazione parallela strutturata e, in particolare, mettendo a disposizione e raffinando il framework FastFlow, sviluppato insieme all'Università di Torino sotto licenza open source".

"Paraphrase" ha dunque dimostrato che si possono sviluppare applicazioni molto efficienti, capaci di sfruttare al meglio le caratteristiche dei sistemi moderni senza sforzi eccessivi dal punto di vista della programmazione. In particolare, FastFlow è stato usato per realizzare una serie di applicazioni il cui sviluppo ha comportato tempi inferiori rispetto a quelli richiesti usando altri strumenti più classici, ma con prestazioni comparabili o migliori.

"Le ricadute del progetto vanno dall'ottimizzazione di semplici kernel numerici fino al miglioramento di processi industriali complessi - ha concluso Marco Danelutto - come nel caso di un'applicazione che ottimizza il taglio del materiale metallico necessario per realizzare grossi trasformatori elettrici, oppure di un'altra che permette di migliorare la gestione delle acque in un depuratore. In entrambi i casi siamo riusciti ad ottenere un aumento delle prestazioni direttamente proporzionale al numero di core del calcolatore utilizzato, migliorando la qualità dei risultati prodotti".

AMD A10-7850K AMD A10-7850K

Insieme all'Ateneo pisano, hanno partecipato a "Paraphrase" la University of St Andrews, che ha avuto il ruolo di coordinatore, la Robert Gordon University e la Queen's University Belfast nel Regno Unito, l'Universitaet Stuttgart in Germania, il National College of Ireland, l'Università di Torino, l'Università AGH di Kracovia, Polonia e la università Etovos Lorand Tudomanyegyetem, Ungheria; i partner industriali erano Mellanox Technologies, in Israele, Erlang Solutions, Regno Unito, Software Competence Center Hagenberg, Austria e ELTE-Soft Kutatas-Fejleszto Nonprofit Kft, Ungheria.

I risultati ottenuti nel progetto ParaPhrase hanno permesso al gruppo del dipartimento di Informatica di entrare a far parte di altri due progetti europei: REPARA, progetto del framework FP7, e RePhrase, progetto del framework H2020, che adottano entrambi la tecnologia FastFlow sviluppata in ParaPhrase. In RePhrase FastFlow verrà reso disponibile anche su architetture IBM (Power8) e ARM.