# Perché i processori M1 sono così veloci, la spiegazione tecnica

- Link: https://www.melamorsicata.it/2021/01/03/perche-i-processori-m1-sono-cosi-veloci-la-spiegazione-tecnica/
- Published: 2021-01-03T09:00:00+01:00
- Author: Kiro

![Chip M1](https://www.melamorsicata.it/wp-content/uploads/2021/01/Chip-M1.png "
Perché i processori M1 sono così veloci, la spiegazione tecnica 1")

Chip M1

Quando Apple [presentò](https://www.melamorsicata.it/2020/11/10/il-primo-chip-apple-silicon-e-m1-ecco-le-caratteristiche/)
il suo primo processore proprietario per Mac, il **chip M1**, molti pensarono che
le performance mostrate durante l’evento fossero delle trovate di marketing per 
spingere le vendite.

Con dei test indipendenti, invece, presto [scoprimmo](https://www.melamorsicata.it/2020/11/14/apple-ammette-per-i-benchmark-del-chip-m1-non-e-stato-preso-un-modello-di-pc-in-particolare/)
che le dichiarazioni di **velocità triple e consumi nettamente ridotti erano veri**.
Anzi, i nuovi Mac superavano anche il top dei modelli venduti fino a qualche mese
prima.

Ma come è possibile? Come è riuscita la società a creare un processore così potente
da diventare molto più veloce di quelli venduti dalla concorrenza? Concorrenza che
investe risorse da decine di anni.

La spiegazione viene data da _Erik Engheim_ in un interessante articolo. Alla base
del salto generazionale dei chip M1 c’è un approccio completamente diverso nel settore
dell’informatica. Apple ha praticamente fatto storia arrivando a una pietra miliare
che sarà ricordata nei decenni a venire.

I processori classici in silicio hanno un’unità di calcolo **CPU con architettura
RISC**. Semplificando il processo possiamo dire che le istruzioni di calcolo sono
inviate alla memoria del computer, che le passa a un Program Counter per iniziarle
a gestire, il tutto viene tradotto in istruzioni per il Register che regola le priorità
di calcolo con il supporto di un Decoder.

Quindi le istruzioni per far funzionare i software passano da un registro nella 
memoria che si occupa di farle processare all’unità di calcolo e ottenere un risultato.

Negli anni Intel e AMD per aumentare la velocità dei chip hanno **semplicemente 
aggiunto core**. Consideriamo un core come un ragionerie che fa calcoli a mano velocemente.
Se aggiungiamo più ragionieri si possono fare più calcoli contemporaneamente. Attualmente
siamo arrivati ai chip Altra Max da 128 core usati nel settore del cloud.

I chip M1 sostanzialmente non sono processori. **Tecnicamente sono dei SoC (System
on Chip)**. Apple ha usato la sua conoscenza nel settore dei chip, nata dall’acquisizione
di molte aziende, per costruire il suo SoC proprietario.

Il Soc è praticamente un blocco unico fatto da più processori: ognuno occupato per
operazioni ben precise. Nel SoC M1 troviamo:

 * Una CPU da 8 core per i calcoli
 * Una GPU da 8 core per le operazioni grafiche
 * Una ISP per processare le immagini
 * Un DSP per le funzioni matematiche della CPU
 * Un NPU da 16 core per le operazioni di machine learning e intelligenza artificiale
 * Un chip per il video encoding e decoding
 * Un Secure Enclave per la sicurezza dei file
 * Una memoria unificata

Le operazioni, quindi, non sono inviate tutte al register e gestite dalla CPU, ma
inviate nel rispettivo chip e questo consente di compiere un gran numero di operazioni
nello stesso tempo.

Molto importante è anche il **concetto di memoria unificata**. La CPU ha bisogno
di pochi dati ma velocemente, mentre la GPU di molti dati anche se più lentamente.
Anziché suddividere la memoria in più parti e assegnare le parti a CPU e GPU, Apple
ha creato una memoria unica super veloce.

Complici le SSD velocissime usate nei Mac, ora il sistema può godere di una memoria
unificata che può fornire molti o pochi dati sempre velocemente. Questo è il motivo
per cui Apple non insiste sull’avere tanta memoria RAM. Con il SoC M1 non è necessario
avere molti GB.

A chiudere questo quadro di perfezione ci sono altri due concetti. Il primo è il
fatto che **l’architettura ARM** consente di avere una miniaturizzazione così efficiente
da ridurre i consumi e la produzione di calore. Questo permette di costruire i MacBook
Air velocissimi ma senza ventola.

L’altro concetto è aver superato il concetto di multi-core a favore del **OoOE (
Out of Order Execution)**. In pratica pensiamo a un magazzino gestito da robot. 
Una CPU è un robot. Quindi se diamo delle istruzioni a un robot questo inizierà 
a portarle a termine. Con più robot (un processore a più core) faremo più operazioni
contemporaneamente.

I robot gestiti con OoOE, nel nostro esempio, non solo conoscono le proprie istruzioni,
ma mediante dei micro-ops conoscono anche le dipendenze delle proprie istruzioni
da quelle degli altri robot. Questo permette a ogni robot di non lavorare solo in
una direzione, ma muoversi per ottimizzare le operazioni senza scontrarsi mai con
gli altri robot.

![I robot di Amazon riescono a muoversi in varie direzioni sapendo dove sono gli
altri robot](https://www.melamorsicata.it/wp-content/uploads/2021/01/Robot-Amazon.
jpeg "Perché i processori M1 sono così veloci, la spiegazione tecnica 2")

I robot di Amazon riescono a muoversi in varie direzioni sapendo dove sono gli altri
robot

Nei processori con OoOE, quindi, le operazioni sono ottimizzate al massimo per effettuare
un gran numero di calcoli aggiuntivi. Il tutto è stato reso possibile da un piccolo
miracolo: **integrare 8 decoder nel chip** anziché 4 come in uso presso Intel e 
AMD.

E se pensate che basterà aggiungere decoder per arrivare ai livelli di Apple sappiate
che non è così facile. Aggiungere decoder significa dover ripensare a tutta la gestione
dell’architettura e questo richiede anni e ingenti investimenti.

Quindi Apple è riuscita a costruire un SoC nettamente superiore a qualsiasi chip
venduto dalla concorrenza. La velocità dei processori di Cupertino è destinata a
crescere grazie alla miniaturizzazione dei componenti. Attualmente usano un’architettura
a 5 nm, ma TSMC (partner di Apple) sta già investendo su quella da 3 nm e 2 nm. 
Ridurre la grandezza dei componenti consentirà di aggiungere core e nuovi chip, 
rendendo il SoC sempre più potente, preservando i consumi.

Per Intel e AMD giungere ai livelli di Apple richiederà molti anni e questo rende
i Mac i computer più veloci del mercato.

### _Correlati_
