Challenge GPU4EO: the winner is…..

Si è concluso con un grande successo il challenge GPU4EO con il team vincitore che, nelle 10 settimane a disposizione, ha ridotto dell’80% il tempo di elaborazione di una coppia interferometrica di immagini radar portandola da 25 a 3 minuti.

Un risultato ottenuto rivisitando gli algoritmi di DORIS, il software per l’elaborazione di immagini radar satellitari, ed utilizzando le potenzialità di una scheda grafica GPU NVIDIA k40.

Il team vincitore è risultato quello capitanato dal Prof. Italo Epicoco dell’Università del Salento, con Francesca Macchia e Francesca Mele. Questo team è stato premiato da Giovanni Sylos Labini CEO di Planetek Italia che ha messo in palio il premio di 5.000 €. (video dell’intervista).

I team finalisti sono risultati variamente composti: il “team Epicoco” formato da ricercatori dell’Università del Salento e del CMCC, il “team Putignano” composto da Putignano-Izzo-Sabella-Chiusolo, professionisti che operano nel settore del remote sensing, e il “team Poliba” composto dal trio Guerriero-Anelli-Pagliara del Politecnico di Bari.

I team si sono confrontati con la sfida che richiedeva, come requisito minimo di partecipazione, di almeno dimezzare i tempi di elaborazione pur garantendo la massima qualità del risultato dell’elaborazione come ha illustrato Raffaele Nutricato di GAP (video) che ha anche spiegato per quale motivo è stato adottato DORIS come software di riferimento per il challenge.

I risultati di tutti i 3 team finalisti hanno dimostrato che con l’adozione delle GPU ci sono ampi margini di ottimizzazione dei software di image processing.

Le strategie di ottimizzazione adottate dai team sono state illustrate durante il workshop (i video dei team Epicoco, Putignano, Poliba). Tutti i team hanno evidenziato che la fase di ricampionamento è quella che richiede i maggiori tempi di elaborazione e per questo motivo si sono concentrati principalmente su questa fase. Il team vincitore ha ridotto i tempi di ricampionamento portandoli da 580 secondi a soli 10 secondi!

Tutti i team hanno meso in evidenza che con il processing con GPU le performance sono fortemente penalizzate dalla frequente lettura/scrittura di file intermedi al termine delle operazioni di elaborazione. Una strategia da perseguire nel porting dei software verso le GPU è proprio la riduzione delle operazioni di lettura/scrittura con la possibilità di mettere in memoria grandi quantità di dati da elaborare sfruttando le caratteristiche delle GPU disponibili sul mercato.

Le modalità di misurazione delle prestazioni dei team sono state illustrate da Giacinto Donvito dell’INFN (vedi il video) che ha anche messo in evidenza che nessun team è comunque riuscito a saturare le capacità elaborative della scheda video a dimostrazione che ci sono ancora ampi margini di miglioramento.

Durante il workshop finale del Challenge GPU4EO il Prof. Hittle dell’Ohio Supercomputer Center nella sua keynote ha illustrato le principali differenze tra il processing su GPU vs CPU e ha presentato alcuni casi applicativi di successo nell’adozione delle GPU per il calcolo scientifico. (video della presentazione e dell’intervista in inglese).

Il Challenge è stato realizzato con il contributo dei partner del progetto RIESCO e grazie alla disponibilità del data center RECAS le cui caratteristiche sono state illustrate dal prof. Bellotti dell’Università di Bari (video).

Il convegno si è aperto con i saluti del prof. Uricchio, Rettore dell’Università di Bari, e gli interventi di Francesca de Leo del CNR, coordinatrice del progetto RIESCO, la dott.ssa Di Ceglie della Regione Puglia e Vincenzo Barbieri di Planetek Italia, che ha illustrato le motivazioni che hanno portato alla organizzazione del Challenge. (video)

Link di approfondimento:

Il Consumo di Suolo in Italia: Rapporto ISPRA 2015.

Nell’anno dell’EXPO dedicato alla alimentazione l’Italia ha perso, per sempre, la capacità di produrre cibo per 100.000 persone.

E questo succede da molti anni ormai.

Perché? Perché ogni secondo perdiamo 7mq di suolo.

Sembra un numero insignificante, ma nel corso degli anni questa perdita di suolo si somma e non è reversibile.

Conoscere è il primo elemento per poter agire e attivare iniziative per impedire lo scempio del nostro territorio. Questo è il tema del convegno “Recuperiamo Terreno” che si tiene oggi, 6 maggio 2015, a Milano.

A mappare la “copertura artificiale” dello stivale, l’ISPRA che, grazie alla cartografia ad altissima risoluzione, nel suo Rapporto sul Consumo di Suolo 2015presentato questa mattina a Milano, nel corso del convegno collaterale all’EXPO 2015, “Recuperiamo Terreno” – utilizza nuovi dati, aggiorna i precedenti e completa il quadro nazionale con quelli di regioni, province e comuni, senza trascurare coste, suolo, lungo laghi, fiumi e aree a pericolosità idraulica. Dati che saranno resi disponibili in modalità Open Data.

Anche Planetek Italia ha contribuito alla redazione di questa cartografia mettendo a disposizione di ISPRA le sue competenze nella mappatura delle aree impermeabilizzate con l’ausilio di dati telerilevati da satellite.

Competenze maturate in diversi anni di attività nella mappatura dei suoli impermeabilizzati a livello continentale, realizzata per l’Agenzia Europea dell’Ambiente (EEA) nei progetti Core Services di Copernicus.

Tutti i numeri dell’ “Italia artificiale” sono disponibili in formato Open Data all’indirizzo www.consumosuolo.isprambiente.it

Challenge GPU4EO 2015

GPU4EO 2015 è una sfida tra ricercatori finalizzata a migliorare le performance del software open source DORIS specifico per la elaborazione di dati satellitari radar sfruttando le capacità elaborativa dell GPU NVIDIA k 40.

Ma perchè abbiamo lanciato questa iniziativa?

Le GPU, dette comunemente schede video, stanno diventando sempre più veloci e consentono restituzioni a schermo sempre più realistiche e rendering sempre più accurati per la costruzione di ambienti digitali immersivi.

Tutto questo avviene sotto la spinta del mercato dell’entertaiment che ha portato anche ad una drastica riduzione dei costi delle GPU. Quindi sul mercato sono disponibili schede grafiche molto potenti a basso costo.

Parallelamente, si sta verificando una crescente disponibilità di immagini acquisite da molteplici tipologie di sensori montati a bordo di satelliti, aerei, droni e veicoli di ogni tipo.

L’elaborazione di queste immagini esige capacità elaborative crescenti che deve scontrarsi con l’esigenza di ridurre di 100 o 1000 volte i tempi di elaborazione per poter offrire servizi in tempo reale.

Adottare computer con CPU sempre più potenti e, dove possibile, grid di computer, anche su cloud, per parallelizzare i processi è una possibile soluzione per fare fronte a queste esigenze.

Questa scelta, tuttavia, oltre che costosa, in alcuni casi non è applicabile. Ad esempio, nel caso di elaborazioni in tempo reale di immagini direttamente a bordo di satelliti o di rover inviati in giro per lo spazio dove sono a disposizione limitatissime capacità elaborative. O, molto più semplicemente, quando il trasferimento delle immagini richiede troppo tempo. Tempo che non abbiamo nel caso di applicazioni in real-time e, quindi, è necessario che il processing avvenga lì dove sono archiviati i dati.

In tutti questi casi le GPU possono rappresentare la soluzione ottimale. Dispongono di capacità elaborative molto elevate e sanno fare bene i calcoli che servono per elaborare le immagini. Sono nate per quello!

Ma se vogliamo utilizzare le GPU per processare, ad esempio, le immagini telerilevate da satellite quali sono i problemi da affrontare?

Un semplice porting non è sufficiente per sfruttare a pieno le capacità elaborative delle GPU, che ‘ragionano’ in modo differente dalle CPU. I programmi vanno riscritti e gli algoritmi vanno adattati alle specifiche GPU che si adottano. Quindi in che modo possiamo riusare il codice già scritto nei software che sono disponibili sul mercato, senza dover riscrivere tutto?

Inoltre, ogni modello di GPU lavora in modo differente. Se adottiamo semplicemente le librerie disponibili, come ad esempio le CUDA di INVIDIA, non siamo certi di poter raggiungere le prestazioni massime che potenzialmente la scheda in uso ci può fornire.

Un altro tema da affrontare è la parallelizzazione del processo su un network di GPU, così come si fa con il grid di computer.

Quindi, ci sono ancora molti aspetti da esplorare nell’utilizzo delle GPU che richiedono team multidisciplinari in grado di integrare molteplici competenze: sulle GPU, sulle librerie, sugli algoritmi e sulle applicazioni da realizzare.

Per favorire questo processo di sviluppo di team multidisciplinari, abbiamo lanciato il Challenge GPU4EO con il contributo di CNR, INFN ENEA e Confindustria Puglia, nell’ambito del progetto RIESCO, e GAP s.r.l..  Inoltre, i partecipanti al Challenge potranno utilizzare le infrastrutture del data center ReCaS messo a disposizione dall’Università di Bari e INFN.

Possono partecipare al Challenge team nazionali ed internazionali sia afferenti ad enti di ricerca che team di studenti e/o professionisti che vogliono confrontarsi e unirsi per affrontare questa sfida. (qui il bando)

Una sfida aperta a tutti coloro che vogliono provare a sfidarsi in una frontiera che promette molte sorprese.

Buona sfida a tutti….