Al momento stai visualizzando Fugaku Next supercomputer da uno Zettaflops

Fugaku Next supercomputer da uno Zettaflops

Lo Zettaflops è un’unità di misura delle prestazioni di calcolo, utilizzata principalmente nel campo del calcolo ad alte prestazioni (HPC). La sigla “FLOPS” sta per Floating Point Operations Per Second, ossia operazioni in virgola mobile al secondo. Indica la quantità di operazioni matematiche in virgola mobile che un computer può eseguire in un secondo.

Il prefisso “zetta-“ rappresenta 10^21, quindi uno zettaflops equivale a un trilione di miliardi di operazioni al secondo.

L’ambizioso progetto per la costruzione di un supercalcolatore arriva dal Giappone, paese leader nella TOP500 una classifica dei supercomputer esistenti sulla Terra.

Il nuovo supercomputer avra’ una richiesta energetica spaventosa che potra’ allo stato attuale delle conoscenze essere soddisfatta solo da centrali nucleari a fissione od in futuro, fusione nucleare.

A64FX processore ARM a 48 nuclei custom

L’A64FX è un processore sviluppato dalla società giapponese Fujitsu, progettato principalmente per applicazioni di calcolo ad alte prestazioni (HPC). Questo processore è noto per essere utilizzato nel supercomputer Fugaku, uno dei più potenti al mondo. Ecco alcune caratteristiche principali dell’A64FX:

  • Architettura ARM: L’A64FX è basato su un’architettura ARM, in particolare l’ARMv8.2-A con estensioni Scalable Vector Extension (SVE). SVE è una tecnologia di vettorizzazione scalabile che consente al processore di eseguire operazioni vettoriali con diverse larghezze, fino a 512 bit.
  • Prestazioni elevate: È progettato per offrire prestazioni eccellenti sia nel calcolo scientifico che nei carichi di lavoro di intelligenza artificiale, grazie alla capacità di gestire operazioni a virgola mobile su larga scala.
  • Efficienza energetica: Un altro aspetto importante dell’A64FX è la sua efficienza energetica. Utilizza la tecnologia High Bandwidth Memory (HBM2), che consente di migliorare la velocità di accesso alla memoria riducendo al contempo il consumo energetico.
  • Prestazioni in virgola mobile: L’A64FX può eseguire fino a 512 bit di operazioni vettoriali in virgola mobile simultaneamente, il che lo rende estremamente potente per carichi di lavoro di simulazione scientifica e modellazione.

Grazie a queste caratteristiche, il processore A64FX ha reso Fugaku il supercomputer più potente del mondo nel 2020, con una capacità di calcolo che ha superato i 400 petaflops in prestazioni di picco.

https://www.fujitsu.com/global/products/computing/servers/supercomputer/a64fx

La microarchitettura dell’A64FX di Fujitsu è altamente ottimizzata per il calcolo ad alte prestazioni (HPC), con un focus su efficienza energetica, elevata larghezza di banda della memoria e capacità di calcolo vettoriale. Ecco una panoramica dettagliata:

1. Architettura ARMv8.2-A con Scalable Vector Extension (SVE)

L’A64FX è basato sull’architettura ARMv8.2-A, che è un’estensione dell’architettura ARM tradizionale, con l’inclusione delle estensioni vettoriali scalabili (SVE). SVE consente di eseguire operazioni vettoriali con lunghezze scalabili fino a 512 bit, rendendo il processore capace di elaborare dati in parallelo in modo efficiente. Questa caratteristica è fondamentale per il calcolo scientifico e HPC, dove è necessario manipolare grandi quantità di dati simultaneamente.

  • SVE supporta operazioni vettoriali di lunghezze diverse, che vanno da 128 bit fino a 512 bit, adattandosi alle esigenze del software senza la necessità di modifiche hardware.
  • Ciò consente al processore di utilizzare il set di istruzioni SIMD (Single Instruction, Multiple Data) per ottimizzare i carichi di lavoro ad alte prestazioni, come simulazioni scientifiche o operazioni di intelligenza artificiale.

2. Core ARM e Cluster

  • L’A64FX è composto da 48 core principali suddivisi in quattro cluster da 12 core ciascuno. Ogni core ARM è un’implementazione personalizzata per prestazioni e consumi ottimizzati.
  • A questi si aggiungono 4 core aggiuntivi per il controllo e la gestione del sistema, che possono anche gestire piccoli carichi di lavoro di servizio.

3. Unità Floating Point (FPU)

  • Ogni core ARM include una unità Floating Point (FPU) ad alte prestazioni in grado di gestire operazioni in virgola mobile a 64 bit (FP64) e a precisione singola (FP32). La FPU sfrutta le capacità vettoriali di SVE per elaborare fino a 512 bit di operazioni in virgola mobile in un singolo ciclo di clock.

4. Memoria HBM2 (High Bandwidth Memory)

Una delle caratteristiche distintive dell’A64FX è l’uso della memoria HBM2, una tecnologia di memoria ad alta larghezza di banda. Ogni cluster di core è collegato a 8 GiB di memoria HBM2, con una larghezza di banda totale fino a 1 TB/s per chip.

  • Questa configurazione consente un accesso estremamente veloce alla memoria, riducendo la latenza e migliorando significativamente le prestazioni nei carichi di lavoro che richiedono un ampio utilizzo della memoria.
  • La HBM2 è anche più efficiente dal punto di vista energetico rispetto alle memorie DRAM tradizionali, il che contribuisce alla riduzione dei consumi complessivi.

5. Interconnessioni e Coerenza della Cache

  • L’A64FX utilizza un sistema di interconnessione NUMA (Non-Uniform Memory Access) per la comunicazione tra i core e la memoria. Questo permette un accesso più efficiente ai dati attraverso la gerarchia della memoria, minimizzando i colli di bottiglia.
  • Ogni core ha la propria cache L1 e L2, mentre ogni cluster di core condivide una cache L3. Questo sistema di cache aiuta a migliorare le prestazioni minimizzando i tempi di accesso alla memoria.

6. Efficienza Energetica

L’A64FX è progettato con un’attenzione particolare all’efficienza energetica, il che lo rende ideale per supercomputer che richiedono una potenza di calcolo elevata senza un consumo energetico sproporzionato. La combinazione di memoria HBM2, ottimizzazione delle prestazioni SIMD e gestione avanzata dell’alimentazione contribuisce a mantenere il consumo energetico ridotto.

7. Cache Hierarchy e Latency Reduction

  • Cache L1: Ogni core ha una cache di livello 1 (L1) per l’accesso rapido ai dati.
  • Cache L2: Ogni core ha anche una cache di livello 2 (L2) più grande per i dati usati meno frequentemente.
  • Cache L3 condivisa: Ogni cluster di 12 core condivide una cache di livello 3 (L3), riducendo la latenza di accesso ai dati tra i core.

8. Supporto a Double Precision (FP64) e AI

Oltre al supporto per calcoli in virgola mobile a precisione doppia (FP64), l’A64FX è ottimizzato per applicazioni di intelligenza artificiale, con capacità di calcolo per FP16 e INT8, che sono molto utilizzate nelle reti neurali e nelle inferenze AI.

9. Interconnessione Tofu-D

Per l’interconnessione tra i nodi nei supercomputer, l’A64FX utilizza la tecnologia proprietaria Tofu-D di Fujitsu. Questa rete di interconnessione ad alta velocità è ottimizzata per la scalabilità e la latenza minima, permettendo una comunicazione estremamente rapida tra i nodi in un sistema di supercomputer come Fugaku.

Schema della Microarchitettura

  1. Core: 48 core principali ARMv8.2-A con estensioni SVE (supporto fino a 512 bit).
  2. Memoria: 32 GiB di memoria HBM2 per chip, con larghezza di banda fino a 1 TB/s.
  3. Cache:
  • L1 privata per ogni core (sia dati che istruzioni).
  • L2 privata per ogni core.
  • L3 condivisa tra cluster di 12 core.
  1. Interconnessione: NUMA e Tofu-D per comunicazione ad alta velocità tra i nodi.
  2. Tecnologie di risparmio energetico: Ottimizzazioni per bilanciare prestazioni e consumi.
fugaku

Marco Franceschini

Dott. Ing. Marco Franceschini

Lascia un commento