Grazie alle possibilità offerte dal calcolo ad alte prestazioni moltissimi settori ne hanno beneficiato, compiendo importanti progressi. Vediamo allora cos’è HPC e perché permette di ottenere risultati notevoli


Quanti sono i settori in cui l’high performance computing trova applicazioni? Difficile dirlo: dalla grande industria alle piccole e medie imprese, dallo spazio all’energia, passando naturalmente dalla ricerca scientifica, il calcolo ad alte prestazioni offre vantaggi importanti a sempre più ampi settori e contesti, favorito dalla sua interazione positiva col cloud computing. Così il suo impiego è divenuto pervasivo, con notevoli vantaggi per l’ambito in cui è impiegato. Prendiamo le previsioni meteorologiche: HPC consente agli scienziati di prevedere meglio le condizioni meteo perché consente loro di sviluppare modelli atmosferici numerici con risoluzioni spaziali più elevate e processi fisici più dettagliati.

Non si può certo dimenticare il suo ruolo nella lotta al Covid-19: gli scienziati nei laboratori di tutto il mondo si sono affidati all’enorme potenza di calcolo dell’HPC e dei supercomputer per eseguire modelli matematici complessi, permettendo di trasformare grandi volumi di dati in evoluzione sul virus in simulazioni di processi biologici e chimici. Tutto questo ha contributo alla scoperta dei vaccini in tempi inimmaginabili fino ad allora.

Serverless CTA

L’ubiquità applicativa del calcolo a elevate prestazioni ha fatto crescere l’interesse commerciale e questo ne consegue un valore di mercato in continua crescita, secondo stime recenti di analisi dedicate: valutato 45,87 miliardi di dollari nel 2022 dovrebbe raggiungere 77,53 miliardi di dollari entro il 2030. Entro il 2025 è prevista una crescita di quasi il 50% di soluzioni di calcolo ad alte prestazioni, con una forte spinta in ambito storage.

Cos’è l’high performance computing

Secondo l’Unione Europea high performance computingsi riferisce a sistemi informatici con potenza di calcolo estremamente elevata in grado di risolvere problemi estremamente complessi ed impegnativi.

Potremmo definirla anche come la pratica di utilizzare l’elaborazione parallela dei dati in modo da migliorare le prestazioni di calcolo ed eseguire calcoli complessi. L’HPC raggiunge questi obiettivi aggregando la potenza di calcolo, fornendo quindi una potenza molto più elevata e prestazioni migliori rispetto ai computer, alle workstation e ai server tradizionali.

Oggi non è possibile pensare di fare a meno del calcolo ad alte prestazioni, considerando l’evoluzione dell’intelligenza artificiale e del machine learning che richiedono enormi quantità di dati.

Le origini dell’HPC risalgono agli anni Sessanta del XX secolo, quando furono sviluppati i primi supercomputer, macchine progettate per eseguire calcoli complessi a velocità senza precedenti.

Serverless CTA

Negli ultimi anni, HPC si è evoluto da uno strumento incentrato sull’indagine scientifica basata sulla simulazione a un duplice ruolo che lo vede gestire simulazione e apprendimento automatico. Questo aumento della portata dei sistemi HPC ha acquisito slancio perché la combinazione di simulazione basata sulla fisica e sul machine learning (e deep learning) ha compresso i tempi necessari per ottenere informazioni scientifiche in campi quali la modellazione climatica, la scoperta di farmaci o la fluidodinamica computazionale.

Come funziona

Il calcolo ad alte prestazioni funziona combinando la potenza computazionale di più computer per eseguire attività su larga scala che sarebbero irrealizzabili su una singola macchina.

La maggior parte dei sistemi HPC ha tre componenti o risorse principali: computer, network, storage. In un’architettura high performance computing, più server, generalmente centinaia o migliaia, formano una rete o un cluster. HPC sfrutta supercomputer, oppure cluster di computer. Ogni server è un nodo e in ogni cluster, i nodi lavorano in parallelo per aumentare la velocità di elaborazione e garantire l’HPC. Il cluster include strumenti software che monitorano le prestazioni dei nodi e controllano la distribuzione delle attività e dei dati. Ciò aiuta a garantire che il calcolo venga eseguito in modo efficiente ed efficace.

I sistemi HPC utilizzano in genere le CPU e le GPU più recenti, nonché tessuti di rete a bassa latenza e dispositivi di storage a blocchi, per migliorare la velocità di elaborazione e le prestazioni di calcolo. Nel caso dei supercomputer, si può contare su tecnologie sempre più potenti. Un esempio è l’italiano Leonardo, oggi quarto al mondo per potenza, sviluppato e assemblato in Europa. Una volta pienamente operativo, avrà una potenza di calcolo di quasi 250 petaflops: significa che sarà in grado di elaborare 250 milioni di miliardi di calcoli al secondo.

Quali sono i vantaggi

Il calcolo ad alte prestazioni offre svariati benefici. Innanzitutto, in termini di velocità ed efficienza, i sistemi HPC possono eseguire calcoli complessi molto più velocemente dei computer tradizionali, consentendo a ricercatori e ingegneri di affrontare problemi su larga scala che sarebbero irrealizzabili con le risorse informatiche convenzionali.

Inoltre consente ai ricercatori di simulare sistemi e processi complessi, portando a nuove intuizioni e scoperte scientifiche. HPC è fondamentale per molte discipline scientifiche, tra cui la modellazione climatica, la dinamica molecolare e la fluidodinamica computazionale.

La tecnologia high performance computing è ampiamente utilizzata in settori quali quello aerospaziale, automobilistico ed energetico per simulare e rendere più efficace la progettazione e l’ottimizzazione di prodotti, processi e materiali, migliorandone le prestazioni e riducendo i tempi di sviluppo.

A ciò si aggiunge il suo ruolo essenziale anche per analizzare set di dati di grandi dimensioni, come quelli generati da studi osservazionali, simulazioni o esperimenti. Consente ai ricercatori di identificare modelli e correlazioni nei dati che sarebbero difficili da rilevare utilizzando le risorse informatiche tradizionali.

Spesso HPC è richiesto per supportare carichi di lavoro di automazione della progettazione elettronica), come un cluster di nodi di elaborazione, software di pianificazione dei lavori e un file system condiviso ad alte prestazioni. Poiché il cloud dispone di risorse CPU e GPU praticamente illimitate, i progettisti di chip possono eseguire molti lavori EDA in parallelo. Utilizzando questo processo, i progettisti ottengono risultati più rapidamente e ottengono un valore aziendale aggiunto.

HPC e cloud

High performance computing e cloud computing non vanno visti in competizione tra loro. Tutt’altro. Spesso, infatti, possono collaborare per potenziare la potenza di elaborazione. Molte organizzazioni spostano sempre più i carichi di lavoro HPC nel cloud per risolvere problemi complessi e ad alta intensità di prestazioni. Questa strategia ha cambiato l’economia dello sviluppo e della ricerca dei prodotti riducendo i requisiti dei prototipi, accelerando i test e riducendo i tempi di commercializzazione.

L’HPC è spesso richiesto per supportare carichi di lavoro di automazione della progettazione elettronica (Electronic Design Automation, EDA), come un cluster di nodi di elaborazione, software di pianificazione dei lavori e un file system condiviso ad alte prestazioni. Poiché il cloud dispone di risorse CPU e GPU praticamente illimitate, i progettisti di chip possono eseguire molti lavori EDA in parallelo. Utilizzando questo processo, i progettisti ottengono risultati più rapidamente e ottengono un valore aziendale aggiunto.

Così oggi, l’HPC nel cloud (denominato talvolta HPC as a service) offre alle aziende un modo decisamente più veloce, scalabile e conveniente per sfruttare il calcolo ad alte prestazioni.

Quando viene utilizzato l’high performance computing

Il calcolo ad alte prestazioni ha rivoluzionato il modo in cui vengono condotte la ricerca e l’ingegneria e ha avuto un profondo impatto su molti aspetti della nostra vita, dal miglioramento dell’efficienza dei processi industriali alla risposta e mitigazione dei disastri, fino alla promozione della nostra comprensione del mondo che ci circonda.

Per questo trova spazio in molti ambiti applicativi.

HPC viene sempre più utilizzato nel settore sanitario per sviluppare nuovi trattamenti e terapie, tra cui la medicina personalizzata, la scoperta di farmaci e la modellazione molecolare. Un esempio è costituito dal ripiegamento delle proteine, processo mediante cui le proteine ​​si ripiegano in strutture tridimensionali, fondamentali per la loro funzione. Comprendere il ripiegamento delle proteine ​​è fondamentale per lo sviluppo di trattamenti per malattie come l’Alzheimer e il cancro. La tecnologia HPC consente agli scienziati di eseguire simulazioni di ripiegamento delle proteine ​​in modo più efficiente, portando a una migliore comprensione del processo e accelerando lo sviluppo di nuovi trattamenti.

La modellazione climatica è un altro ambito applicativo di fondamentale importanza. I modelli climatici vengono utilizzati per simulare il comportamento del clima della Terra, compresa l’atmosfera, gli oceani e le superfici terrestri. Queste simulazioni possono richiedere un utilizzo intensivo del calcolo e richiedere grandi quantità di dati e calcolo parallelo, il che le rende ideali per i sistemi HPC accelerati da GPU. Utilizzando unità di elaborazione grafica e altre tecniche di elaborazione parallela, gli scienziati del clima possono eseguire simulazioni più dettagliate e accurate, che a loro volta portano a una migliore comprensione del clima della Terra e degli impatti delle attività umane. Man mano che questo caso d’uso continua a progredire, le capacità predittive cresceranno e potranno essere utilizzate per progettare strategie efficaci di mitigazione e adattamento.

Nel campo energetico non c’è comparto, dall’oil&gas alle fonti rinnovabili, che non impieghi già oggi o valuti l’adozione di sistemi HPC. Dalle prospezioni del sottosuolo, alla ricerca di nuovi combustibili fossili all’eolico, non c’è campo in cui oggi non sia imprescindibile. Pensiamo solo all’energia dal vento: la competitività dei parchi eolici può essere garantita solo con un’accurata valutazione delle risorse eoliche, una progettazione dei parchi e simulazioni del vento su microscala a breve termine per prevedere la produzione giornaliera di energia.

Infine, vanno ricordate le simulazioni di fluidodinamica computazionale, utilizzate per modellare il comportamento dei fluidi nei sistemi del mondo reale, come il flusso d’aria attorno a un aereo. Il calcolo ad alte prestazioni permette agli ingegneri di eseguire simulazioni più dettagliate e accurate, che aiutano a migliorare la progettazione di turbine eoliche, motori a reazione e veicoli da trasporto di tutti i tipi.

Serverless CTA