Con la crescita inarrestabile dell’economia digitale e il sempre più diffuso utilizzo dei dati da parte della società, il consumo di energia e la mitigazione dell’impatto ambientale sono diventate una delle sfide principali dell’informatica moderna, sia per i dispositivi clienti wireless integrati sia per i centri di calcolo ad alte prestazioni (HPC).
Colmare il divario
Il progetto triennale EXCESS, che si concluderà alla fine di agosto 2016, ha raccolto la sfida e si è proposto di risolvere quello che secondo i partner del progetto era una mancanza di approcci olistici e integrati per coprire tutti i livelli del sistema – dall’hardware al software al livello dell’utente – e i limiti che questo crea all’impiego delle soluzioni esistenti e alla loro efficienza energetica. All’inizio del progetto, il team ha analizzato i punti in cui le prestazioni energetiche sono sprecate e, servendosi di queste conoscenze, ha sviluppato una rete che dovrebbe permettere un rapido sviluppo della produzione di software efficienti dal punto di vista energetico.
“Quando abbiamo iniziato questo programma di ricerca, era evidente la mancanza di strumenti e modelli matematici per aiutare gli ingegneri di software a programmare in modo efficiente dal punto di vista energetico e che permettessero loro di ragionare in modo astratto sulla potenza e sul comportamento energetico del loro software,” ha commentato Philippas Tsigas, professore di ingegneria informatica presso la Chalmers University of Technology e coordinatore del progetto EXCESS. “L’approccio olistico del progetto coinvolge componenti sia hardware che software, permettendo al programmatore di prendere per tempo decisioni di architettura che tengano conto della potenza. Questo permette di ottenere un maggiore risparmio di energia rispetto agli approcci precedenti, dove l’ottimizzazione della potenza del software era spesso applicata come fase secondaria, dopo che era stata scritta l’applicazione iniziale.”
Il team del progetto ha fatto grandi passi verso la possibilità di fornire un insieme di strumenti e modelli per gli sviluppatori di software e i designer dei sistemi che permetta loro di programmare in modo efficiente dal punto di vista energetico. L’insieme di strumenti va da componenti hardware a risparmio energetico fondamentalmente nuovi, come la piattaforma Myriad di Movidius, a librerie e algoritmi sofisticati ed efficienti.
I test fatti su grandi aggregazioni di streaming di dati, una comune operazione usata nell’analisi dei dati in tempo reale, hanno prodotto risultati notevoli. Quando usa il quadro EXCESS, il programmatore può fornire una soluzione 54 volte più efficiente dal punto di vista energetico rispetto a un’implementazione standard su un processore PC di ottimo livello. L’approccio olistico di EXCESS prima presenta i vantaggi hardware, usando un processore integrato, e poi continua mostrando il modo migliore per dividere i calcoli all’interno del processore, per migliorare ulteriormente le prestazioni.
Embedding efficiente dal punto di vista energetico per gli HPC
Movidius, un partner del progetto EXCESS, che ha sviluppato la
piattaforma Myriad di processori ottici, ha integrato sia la tecnologia che la metodologia sviluppate dal progetto nel proprio kit di sviluppo standard per hardware e software. Nel campo dei processori integrati c’è stata una graduale migrazione verso l’impiego di caratteristiche di classe HPC su piattaforme integrate.
Il rapido sviluppo di veicoli autonomi come automobili e droni, sistemi di assistenza alla guida e lo sviluppo in generale della robotica per la casa (ad esempio aspirapolvere e tagliaerba) ha portato alla portabilità di vari algoritmi di visione artificiale su piattaforme integrate. Tradizionalmente questi algoritmi venivano sviluppati su computer desktop ad alte prestazioni e sistemi di HPC, il che li rendeva difficili da reimpiegare in sistemi integrati.
Un altro problema era che gli algoritmi non erano sviluppati tenendo conto dell’efficienza energetica. Il progetto EXCESS ha invece permesso e diretto lo sviluppo di strumenti e metodi di sviluppo di software per coadiuvare la portabilità di applicazioni di HPC all’ambiente integrato in un modo energeticamente efficiente.
Per maggiori informazioni, consultare:
Sito web del progetto