Come funziona un supercomputer?
Un supercomputer può contenere migliaia di nodi che utilizzano l'elaborazione parallela per comunicare fra loro e risolvere i problemi. Tuttavia, oggi esistono due diversi approcci all'elaborazione parallela, ovvero i sistemi multiprocessore simmetrici (SMP, Symmetric Multiprocessing) e l'elaborazione a elevato parallelismo (MPP, Massively Parallel Processing).
Nel caso dell'SMP, i processori condividono la memoria e il bus o il percorso dati di I/O. Questo approccio è noto anche come sistema multiprocessore strettamente accoppiato o "sistema a condivisione totale".
L'MPP, invece, coordina l'elaborazione di un programma fra più processori, che gestiscono simultaneamente parti diverse del programma e sono dotati di memoria e sistemi operativi propri. I processori MPP comunicano attraverso un'interfaccia di messaggistica, che consente lo scambio dei messaggi fra i processori. Questo approccio può risultare molto complesso, poiché occorre sapere come partizionare un comune database e distribuire il lavoro fra i diversi processori. I sistemi MPP sono noti anche come sistemi "debolmente accoppiati" o "senza condivisione".
L'approccio SMP permette alle aziende di servire gli utenti più rapidamente, bilanciando i workload dinamicamente fra più computer. Rispetto ai sistemi MPP, i sistemi SMP sono considerati più adatti all'elaborazione delle transazioni online (OTP, Online Transaction Processing) in cui molti utenti accedono allo stesso database (ad esempio per la semplice elaborazione delle transazioni). D'altro canto, l'MPP si presta meglio dell'SMP alle applicazioni che eseguono ricerche parallele in più database, come i sistemi di supporto decisionale e le applicazioni di data warehouse.
Tipologie di supercomputer
I supercomputer possono essere di due tipi, ovvero generici e specializzati. I supercomputer generici possono essere ulteriormente suddivisi in tre sottocategorie:
Supercomputer generici
- Computer a elaborazione vettoriale: la maggior parte dei supercomputer utilizzati per le applicazioni scientifiche negli anni '80 e all'inizio degli anni '90 era costituita da computer vettoriali. Oggi non sono più così diffusi, ma i supercomputer attuali utilizzando ancora CPU basate almeno in parte su questo tipo di elaborazione.
- Computer cluster strettamente connessi: sono gruppi di computer connessi che operano insieme, come una singola unità, e includono i cluster a elevato parallelismo, i cluster basati su director, i cluster a due nodi e i cluster con più nodi. I cluster paralleli e quelli basati su director vengono normalmente utilizzati per l'elaborazione a performance elevate (HPC, High-Performance Computing), mentre i cluster a due o più nodi vengono utilizzati per garantire la tolleranza ai guasti errori.
- Computer commodity: questa categoria include le disposizioni formate da numerosi PC standard connessi tramite reti locali (LAN, Local Area Network) a banda larga e bassa latenza.
Supercomputer specializzati
I supercomputer specializzati sono quelli che sono stati espressamente concepiti per svolgere una determinata attività o raggiungere un obiettivo specifico. Solitamente si avvalgono di circuiti ASIC (Application-Specific Integrated Circuit) per aumentare le performance (ad esempio, Deep Blue e Hydra sono stati espressamente realizzati per i giochi, come gli scacchi).
Scenari di utilizzo dei supercomputer
Dati i loro vantaggi evidenti, i supercomputer vengono ampiamente utilizzati per le applicazioni ingegneristiche e la ricerca scientifica. Gli scenari di utilizzo includono:
- Studio del clima e meteorologia, allo scopo di prevedere gli effetti degli eventi meteorologici estremi e comprendere gli schemi climatici, come nel caso del sistema National Oceanic and Atmospheric Administration (NOAA)
- Esplorazione gas-petrolifera, al fine di raccogliere le enormi quantità dei dati sismici e geofisici necessari per trovare e sviluppare i giacimenti di petrolio
- Settore aeronautico e automobilistico, per progettare simulatori di volo e ambienti automobilistici, oltre che per applicare i principi aerodinamici allo scopo di minimizzare il coefficiente di attrito dell'aria
- Ricerche sulla fusione nucleare, per la costruzione dei reattori a fusione nucleare e degli ambienti virtuali da utilizzare per testare le esplosioni nucleari e la balistica delle armi
- Ricerca medica, per sviluppare nuovi farmaci, terapie per il cancro e le malattie genetiche, oltre ai trattamenti per il COVID-19, e per studiare l'origine e l'evoluzione delle epidemie e delle malattie
- Applicazioni in tempo reale, per garantire le performance dei giochi online durante i tornei e lanci delle nuove versioni dei giochi, solitamente caratterizzati da un picco di utenze
Supercomputing e HPC
Il termine supercomputing viene talvolta utilizzato come sinonimo di High-Performance Computing (HPC). Tuttavia, è più corretto dire che il supercomputing è una soluzione HPC, riferendosi all'elaborazione di calcoli complessi e di grandi dimensioni utilizzata dai supercomputer.
L'HPC permette di sincronizzare i calcoli ad alta intensità di dati su più supercomputer collegati in rete. Questo permette di eseguire calcoli complessi che utilizzano dataset più ampi in un tempo molto inferiore a quello necessario per i normali computer.
Storage scalabile per il supercomputing
Oggi i supercomputer vengono utilizzati in molti campi diversi e per molti scopi diversi. Alcune delle società tecnologiche più importanti del mondo stanno sviluppando supercomputer AI in vista del ruolo che prevedono di svolgere nel metaverso in rapida espansione.
Di conseguenza, oltre a supportare il recupero rapido di dati al fine di garantire velocità di calcolo elevatissime, le soluzioni di storage devono essere anche abbastanza scalabili da rispondere alle esigenze dei workload AI su vasta scala, continuando a garantire performance elevate.
Le tecnologie di realtà virtuale e aumentata richiedono moltissimi dati, e lo stesso vale anche per le tecnologie di supporto, come il 5G, il machine learning (ML), l'Internet of Things (IoT) e le reti neurali.
Pure Storage® FlashArray//XL offre i massimi livelli di performance ed efficienza per i workload enterprise, mentre FlashBlade® è la soluzione di storage all-flash più avanzata del settore. Entrambi i prodotti offrono una soluzione di storage affidabile e scalabile, perfetta per i più veloci supercomputer attualmente sul mercato.
Sono entrambi disponibili tramite Evergreen//One™, una soluzione Storage-as-a-Service (STaaS) gestita accessibile tramite un semplice modello su abbonamento, che garantisce tutta la flessibilità necessaria per espandere la capacità di storage in base alle esigenze del momento.
Questi prodotti consentono di pagare solo le risorse utilizzate, che vengono messe a disposizione solo quando necessario, garantendo un'innovazione continua senza richiedere alcuna interruzione. Per maggiori informazioni, contattaci oggi stesso.