Cortex-A75, A55 e Mali-G72, tutte le novità targate ARM

L'avvento di DinamIQ porta ARM a calare un nuovo tris d'assi che vedremo nei dispositivi mobile del 2018 e non solo: Cortex-A75, Cortex-A55 e Mali-G72.

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Sul finire di marzo ARM annunciò DynamIQ, un'evoluzione del concetto che per anni abbiamo conosciuto con il nome di big.LITTLE. Fino a oggi era possibile accoppiare due cluster di core differenti (quattro Corte-A53 e quattro Cortex-A72, ad esempio), in modo da offrire alte prestazioni "alla bisogna" e consumi ridotti allo stesso tempo.

dynamiq 01

Clicca per ingrandire

Con l'architettura multi-core DinamIQ, ARM punta invece sull'idea di usare core differenti (fino a otto) nello stesso cluster. Non più quindi quattro core di un tipo e quattro di un altro, ma tanti core diversi per gestire al meglio operazioni complesse e non.

Questo sottintende almeno tre cose: la prima è una migliore comunicazione tra tutte le parti del SoC, la seconda è una maggiore flessibilità nel creare prodotti ancora più mirati e la terza è un maggiore controllo sui consumi. Nel corso dell'ARM Tech Day 2017 l'azienda britannica - dall'estate scorsa nelle mani della giapponese Softbank - ha illustrato nuovi aspetti di DynamIQ.

dynamiq 02

Clicca per ingrandire

Ogni cluster di core ARM, ad esempio, è collegato a una DSU (DynamIQ Shared Unit). All'interno di un SoC possono esserci più DSU, in base ai differenti tipi di core o acceleratori presenti. Ogni DSU è dotata di collegamenti asincroni con i cluster, in modo da permettere ai core di lavorare a frequenze differenti dal resto del SoC e dagli altri cluster di core.

dynamiq 07

Clicca per ingrandire

L'abilità di DinamIQ di regolare la frequenza o spegnere singoli core nel cluster permette di ridurre i consumi, anche se la regolazione della tensione è per cluster e non per core.

dynamiq 04

Clicca per ingrandire

dynamiq 06

Clicca per ingrandire

All'interno di ogni DSU c'è una cache L3 (16-way set associative), che il partner di ARM può disattivare completamente. Il massimo a disposizione è 4 MB e può essere suddivisa in quattro parti, anche non bilanciate: in una configurazione a 8 core con 4 MB di cache L3, per esempio, un core può avere accesso a 3 MB di cache mentre gli altri sette devono spartirsi 1 MB.

dynamiq 05

Clicca per ingrandire

La cache L3 può anche spegnere le sue parti a seconda del carico: può funzionare completamente con carichi intensivi, a metà con compiti come la riproduzione di video o spegnersi totalmente per operazioni basilari come la riproduzione musicale.

a55 01

Clicca per ingrandire

In conseguenza di DynamIQ, ARM ha presentato nuovi core. Cortex-A55 è il successore di Cortex-A53, probabilmente uno dei progetti di maggiore successo di ARM di sempre. L'azienda stima consegne per 1,7 miliardi di chip dotati di core A53. Le buone prestazioni e l'alta efficienza ne hanno decretato il successo, ma è tempo di andare avanti.

a55 02

Clicca per ingrandire

a55 03

Clicca per ingrandire

Cortex-A55 è basato sulle specifiche ARMv8.2 ed è ancora una CPU in-order con un die molto piccolo e un'alta efficienza energetica. La novità più rilevante di A55 è la presenza di cache L2 per ogni core, che opera alla frequenza del core e una cache L3 condivisa più capiente. Il progetto A53 aveva una cache L2 condivisa tra i core. ARM ha anche ridotto la latenza delle singole cache L2.

a55 04

Clicca per ingrandire

a55 05

Clicca per ingrandire

L'aggiunta di una cache L3 condivisa assicura che gran parte dei dati rimangano vicino ai core, senza che finiscano nella memoria principale. ARM ha inoltre ottimizzato tutti gli accessi alle cache L2, L3 e alla memoria principale, cosa che ha permesso di aumentare le prestazioni senza far lievitare i consumi. A parità di processo produttivo e frequenza il progetto Cortex-A55 è il 15% più efficiente.

Anche le cache L1 e L2 TLB sono state incrementate per permettere a più dati di rimanere vicino ai core: hanno dimensioni che spaziano da 16 a 64 KB e sono 4-way set associative. Le cache L2 possono essere configurabili fino a 256 KB. ARM ha sviluppato anche un nuovo prefetch e ha migliorato la branch prediction, tanto che l'azienda l'ha definita una sorta di "rete neurale".

a55 06

Clicca per ingrandire

ARM ha fatto cambiamenti importanti anche alle execution unit. All'interno di Cortex-A53 c'era una pipeline load/store condivisa, mentre in A55 sono state suddivise. Questo permette un load/store dual issue. Ci sono anche due unità NEON anziché una pipeline condivisa NEON/Int e una NEON. Le unità NEON sono state migliorate in termini di throughput ed efficienza, supportano formati FB16 e possono fare 8 operazioni a 16 bit per ciclo. La latenza FMA è passata da 8 a 4 cicli.

Oltre a Cortex-A55, ARM ha svelato Cortex-A75 e la GPU Mali-G72. Andiamo con ordine. Il progetto Cortex-A75 (out of order) è leggermente più piccolo del precedente A73, mentre è 2,5 volte più grande di A55. ARM promette un miglioramento delle prestazioni del 22% rispetto ad A73.

a75 01

Clicca per ingrandire

Come A55, anche A75 figura una cache L2 per core che opera alla frequenza dell'unità. Le cache L2 possono avere dimensioni da 256 a 512 KB. In precedenza A73 aveva una cache L2 condivisa. La parte DynamIQ conserva la cache L3 condivisa. ARM ha anche aggiunto caratteristiche come cache stashing, atomic operations e cache clean to persistence.

a75 02

Clicca per ingrandire

Il front end di A75 ha ricevuto molta attenzione. A73 aveva un'unità di decodifica 2 wide, mentre ora c'è uno stadio di decodifica 3 wide con un singolo ciclo di decodifica con instruction fusing e micro ops.

a75 04

Clicca per ingrandire

Anche la branch prediction ha ricevuto molta attenzione. Questa unità ha un branch predict 0 cycle che sostiene il bandwidth istruzione dei core, cosa che permette un uso più efficiente delle execution pipeline, che terminano le operazioni più rapidamente e raggiungono anzitempo stati di consumo inferiori.

a75 05

Clicca per ingrandire

Le unità NEON hanno ricevuto lo stesso ammodernamento visto sul design Cortex-A55, con supporto FP16 e il doppio del throughput nei carichi a singola precisione. Supportano anche Int 8, il formato preferito per l'allenamento di reti neurali.

a75 06

Clicca per ingrandire

a75 07

Clicca per ingrandire

ARM ha aggiunto anche caratteristiche indispensabili per i carichi server, come la funzionalità RSA con error correction throughout. C'è inoltre una migliore mesh network per una maggiore scalabilità, un bandwidth e scalabilità superiori tra i cluster. Secondo ARM tutti questi cambiamenti permettono - mantenendo lo stesso processo produttivo - di avere il 20% di prestazioni in più e gli stessi consumi di A73.

Mali-G72 è il secondo progetto grafico basato su architettura Bifrost. Debutterà tra la fine dell'anno e l'inizio del 2018, come le due nuove soluzioni Cortex. ARM ha migliorato prestazioni ed efficienza rispetto a G71, tanto da ottenere un core più piccolo. Si parla di un'efficienza del 17% in più con processi di machine learning.

g72 02

Clicca per ingrandire

C'è un tile buffer più grande per aumentare l'efficienza e di conseguenza i consumi. Le unità aritmetiche sono state ribilanciate e le cache sono state riviste. G72 supporta le API Vulkan e DirectX 11.2.

g72 04

Clicca per ingrandire

All'interno di G72 si contano un massimo di 32 shader. ARM indica un'efficienza energetica superiore del 25% e il 20% di densità prestazionale in più (prestazioni per millimetro quadrato di spazio).

Migliorate anche le prestazioni VR con un'implementazione multi-view basata su hardware, ovvero serve una sola draw call per renderizzare due occhi. Infine, G72 supporta nativamente un rendering interno a un bitrate maggiore e HDR.


Tom's Consiglia

Cerchi uno smartphone di ultima generazione? Hai dato un'occhiata a LG G6?