Nell’immaginario collettivo
High Performance Computing è un campo estremamente specialistico. Un ambito in cui si muovono quasi esclusivamente realtà governative ed istituzioni accademiche. In buona parte questo scenario è ancora vero. Ma una delle evoluzioni più interessanti che sta attraversano il mondo HPC è proprio la sua “
democratizzazione”. Che lo apre ad una platea di utenti
sensibilmente più ampia di quella tradizionale.
È una
espansione del mercato che ne aumenta anche il valore. Le stime indicano che entro il 2025 il settore HPC dovrebbe globalmente muovere qualcosa come
sessanta miliardi di dollari. Con un incremento annuo leggermente superiore al sette percento da qui ad allora. Non è poco per un settore che di per sé non è nuovo. E che, come accennato, è stato sinora considerato una nicchia, sebbene pregiata.
Il punto chiave è che questa nicchia non si può più considerare tale. Tanto che molti lo dividono oggi in
High Performance Technical Computing (HPTC) e
High Performance Business Computing (HPBC). Nel primo ambito ci sono le applicazioni HPC tradizionali di supercalcolo, nel secondo le applicazioni d’impresa. Applicazioni che nascono da una esigenza comune a molte aziende: avere a disposizione una grande potenza di calcolo per eseguire previsioni a partire da grandi moli di dati. Ecco perché al supercomputing oggi sono interessate anche grandi imprese di ambiti come logistica, Finance, manufacturing,
energia.
Architetture che cambiano
La crescita del mercato è stata resa possibile anche dallo sviluppo dell’offerta. Gli utenti tradizionali dei sistemi HPC hanno le capacità e le competenze per sviluppare direttamente codice e modelli matematici. Questo non è scontato per gli utenti “normali”, o almeno non allo stesso livello. Motivo per cui i vendor HPC oggi ragionano
nell’ottica della soluzione estesa e non del puro hardware. Proponendo anche strumenti software di gestione, librerie,
piattaforme di sviluppo e tool specializzati.
Nel tempo è cambiato anche il
modello architetturale del mondo HPC. I supercomputer classici erano prevalentemente basati su processori con un alto grado di parallelismo interno. E la crescita di potenza era ricercata con un approccio scale-up. Oggi si preferisce realizzare questo parallelismo suddividendo il carico di lavoro su un gran numero di nodi autonomi di elaborazione. E che
crescano in scale-out, aumentando il numero di nodi. Che sono quasi sempre realizzati con componenti standard, in particolare processori x64.
Un sistema di High Performance Computing però non va visto semplicemente come la combinazione in rete di molti nodi tradizionali. L’approccio alla risoluzione dei problemi del mondo HPC
è concettualmente diverso da quello delle applicazioni generaliste.
Punta a raggiungere una soluzione
nel minor tempo possibile, distribuendo uno stesso workload (di norma l’esecuzione di un algoritmo iterativo) su migliaia di nodi che esaminano porzioni diverse di una grande base dati di partenza. In questo ci sono alcuni
aspetti critici - accesso allo storage, comunicazione tra nodi, ottimizzazione estrema degli algoritmi - che il computing “semplice” non affronta. O lo fa in modi diversi. Un supercomputer, in sintesi, è molto più che la somma dei suoi nodi. E l'attuale standardizzazione non deve far pensare che l’HPC si stia banalizzando.
La promessa exascale
L’appeal del computing ad alte prestazioni è legato anche a una constatazione tecnica di fondo. Mediamente, negli ultimi 10-15 anni i sistemi HPC hanno mantenuto la promessa che i sistemi convenzionali hanno disatteso. Ossia quella di offrire una
crescita quasi lineare nel tempo della potenza di calcolo offerta. Se si guarda alle prestazioni pure dei più importanti supercomputer del mondo, ossia quelli nelle prime posizioni della classifica Top500, si nota appunto questa tendenza. Ma la stessa considerazione vale per le prestazioni aggregate di ogni anno e per i supercomputer nelle posizioni di coda. Un segnale che
è proprio il “modello HPC” a dare oggi le risposte migliori a chi cerca performance elevate.
Nella Top500 dello scorso giugno tutti i supercomputer garantivano una potenza
superiore al petaflop. Il cinquecentesimo 1,022 petaflop, il primo - Summit di IBM - ben 148,6. Il prossimo salto generazionale è il cosiddetto exascale computing. Avere sistemi HPC che offrano stabilmente una potenza elaborativa di
almeno un exaflop, ossia mille petaflop. Va sottolineato “stabilmente”, dato che in realtà un exaflop è stato già raggiunto come potenza di picco.
Gli esperti di settore ritengono che l’era exascale dovrebbe iniziare a breve, con i primi sistemi installati intorno al
2022-2023. Gli Stati Uniti guidano questa corsa alle massime potenze elaborative. Ma la Cina li segue da vicino e anche Europa e Giappone hanno attivato
programmi di sviluppo mirati. Che dovrebbero rendere gli anni Venti il decennio dell’exaflop.
Certo non è una partita, questa specifica dell’exascale, a cui possono partecipare tutti. Secondo il loro progetti di massima, i primi sistemi HPC da exaflop richiederanno
almeno 40 megawatt di potenza, sino a 13 mila tonnellate di liquido refrigerante, 1.400 metri quadrati di spazio, una capacità di raffreddamento a ventilazione forzata intorno al milione di metri cubi l’ora. Ci vorranno tempo e soprattutto
sviluppi tecnologici nei campi dell’alimentazione e del
raffreddamento prima che anche il supercomputing exascale possa essere “democratico” come quello che adesso si misura in qualche petaflop.