Un gruppo di ricercatori turchi, dietro finanziamento dell'Unione Europea, ha realizzato un codice di personalizzazione per spingere i data center a usare chip programmabili ad alta efficienza energetica. Il loro impiego può ridurre l'ingente consumo di corrente.
I data center assorbono quantità sempre maggiori di energia. Molte aziende stanno cercando di costruire le nuove strutture sott’acqua o al Circolo Polare Artico per limitare almeno i consumi dovuti al raffreddamento delle apparecchiature, ma il problema resta. Per affrontarlo l’Unione Europea ha finanziato il progetto FPGA Accelerators per spingere lo sviluppo di hardware meno sofisticato e più efficiente dal punto di vista energetico.
È bene ricordare che molti dei servizi usati dai cittadini privati coinvolgono i data center: l’ascolto di musica in streaming, la fruizione di serie TV, video e film on-demand, lo shopping online, i social media. Oltre ovviamente all’uso di applicazioni via web (compresi i videogiochi), all’archiviazione su cloud e molto altro. Tutte queste attività, svolte da milioni di persone in tutto il mondo, hanno portato negli ultimi anni a un’impennata di consumi energetici. Secondo alcune stime, l’energia elettrica consumata dai data center supera già quella di un tipico paese di medie dimensioni e sta crescendo rapidamente.
L’idea della Turchia, coordinatore del progetto, è di costruire chip personalizzati in funzione dell’attività che ciascun server dovrà svolgere. Invece di installare lo stesso hardware in tutti i server presenti in un datacenter – con il risultato che spesso ci sono macchine più potenti del necessario – si potrebbero usare chip differenti focalizzati sull’attività specifica di una determinata macchina.
Mustafa Özdal della Bilkent University di Ankara, e ricercatore capo nel progetto FPGA Accelerators, ha trovato il modo per semplificare l’uso nei data center di un tipo di chip di calcolo ad alta efficienza energetica denominato FPGA (Field-Programmable Gate Array). Per i non addetti ai lavori, gli FPGA sono circuiti integrati le cui funzionalità sono programmabili tramite un linguaggio di descrizione hardware. Non è una tecnologia esordiente: i primi chip risalgono alla seconda metà degli anni 1980, si possono produrre su larga scala a basso prezzo, hanno un’alta efficienza energetica e possono essere programmati e riprogrammati in qualsiasi momento per svolgere specifiche funzioni.
Il problema è che programmarli richiede mesi di lavoro da parte di ingegneri hardware, con costi che spesso superano il budget delle aziende più piccole. Però sono l’ideale per gestire ad esempio, l’analisi dei grafici (Graph Analytics o Graph Algorithms, ossia le applicazioni che estraggono informazioni utili dai grafici). È l’attività che si usa per generare i risultati delle ricerche, come ad esempio il titolo di un libro in un negozio virtuale e i conseguenti suggerimenti per libri simili che potrebbero piacere all’utente. Le stesse applicazioni sono alla base dei social media, per estrarre dati e metterli in relazione tra loro, e di tutti i casi in cui sia richiesto di identificare un elemento e metterlo in relazione con altri.
Nei data center la domanda di applicazioni di Graph Analytics è preponderante, e gli FPGA sono candidati promettenti. Per questo Özdal e il suo gruppo di ricerca hanno creato un “modello” apposito di FPGA per l’analisi dei grafici. Partendo dal modello, gli ingegneri hardware possono personalizzarlo e ottimizzarlo per un’applicazione specifica compilando meno di 100 righe di codice, contro le migliaia di linee di codice che sarebbero necessarie partendo da zero. Un notevole risparmio di tempi e di costi che attira l’interesse dei gestori.
Il progetto è terminato, i ricercatori di Bilkent stanno lavorando con Intel per garantire che il loro modello sia compatibile con la generazione emergente di piattaforme Xeon, e stanno semplificando ancora di più il modello per fare che sia estremamente facile da usare. Presto sarà disponibile come codice open source, il che significa che chiunque può usarlo.