Cosè una micro-operazione?

I computer sono programmati con linguaggi di programmazione. Questi linguaggi sono generalmente leggibili dall'uomo e consentono al programmatore di configurare ciò che fa il computer. Questo codice deve quindi essere compilato nelle istruzioni del computer. I dettagli esatti di questo variano a seconda dell'architettura del set di istruzioni o ISA utilizzato dal computer previsto. Questo è il motivo per cui esistono collegamenti di download diversi per le CPU x86 di Intel e AMD e per le CPU ARM utilizzate nei moderni dispositivi Apple. L'ISA di x86 e ARM è diverso; il software deve essere compilato separatamente. Come ha dimostrato Apple, è possibile creare un livello di traduzione elaborato; non è comune farlo.

Potresti pensare che la CPU veda le istruzioni che le vengono presentate e quindi le esegua in ordine. Ci sono molti trucchi che fanno le moderne CPU, inclusa l'esecuzione fuori ordine, che consente alla CPU di riordinare le cose al volo per ottimizzare le prestazioni. Tuttavia, una parte intelligente che è abbastanza ben nascosta sono le micro-operazioni.

La pipeline per le micro-operazioni

Le singole istruzioni nel codice macchina possono essere chiamate istruzioni o operazioni; i termini sono intercambiabili. Una delle difficoltà con le architetture Complex Instruction Set Computing o CISC come x86 è che le istruzioni possono variare in quanto sono lunghe. Questo si riferisce specificamente alla quantità di dati che prendono per rappresentare. In x86, un'istruzione può essere più breve di un byte o lunga fino a 15. Confronta questo con l'architettura RISC-V standard utilizzata dalle moderne CPU ARM con istruzioni a lunghezza fissa di 4 byte.

Suggerimento: RISC è l'acronimo di Reduced Instruction Set Computing.

Una delle implicazioni di questa differenza nella struttura è che le architetture RISC tendono ad essere molto più facili da gestire in modo efficiente. Ogni istruzione ha più fasi per il suo funzionamento che utilizzano hardware diverso. Il pipelining esegue più istruzioni attraverso queste fasi contemporaneamente, con esattamente un'istruzione in ogni fase. Il pipelining offre un notevole aumento delle prestazioni se utilizzato in modo efficiente. Un fattore chiave per utilizzare in modo efficiente una pipeline è garantire che ogni fase venga utilizzata contemporaneamente. Ciò mantiene tutto in esecuzione attraverso la pipeline senza intoppi.

Poiché tutte le istruzioni hanno la stessa lunghezza, le istruzioni RISC tendono a richiedere lo stesso tempo di elaborazione l'una dell'altra. In un CISC, tuttavia, come x86, alcune istruzioni possono richiedere molto più tempo per essere completate rispetto ad altre. Ciò crea un grosso problema di efficienza durante il pipelining di una CPU. Ogni volta che arriva un'istruzione più lunga, rimane bloccata nella pipeline più a lungo. Questo provoca una bolla e trattiene tutto ciò che c'è dietro. Le micro-operazioni sono la soluzione a questo.

Micro-operazioni efficienti

Invece di trattare ogni istruzione come l'unico livello di operazione che può essere eseguito, le micro-operazioni introducono un nuovo livello inferiore. Ogni operazione può essere suddivisa in tante micro-operazioni. Progettando attentamente le micro-operazioni, puoi ottimizzare la pipeline.

È interessante notare che questo offre un nuovo vantaggio. Mentre l'ISA complessivo, diciamo x86, rimane lo stesso tra molte diverse generazioni di CPU, le micro-operazioni possono essere progettate su misura per ogni generazione di hardware. Questo può essere fatto con una profonda comprensione di quante prestazioni possono essere spremute da ogni fase della pipeline per ogni micro-operazione.

Agli albori delle micro-operazioni, erano connessioni cablate che attivavano o disabilitavano funzionalità specifiche a seconda della micro-operazione. Nella moderna progettazione della CPU, una micro-operazione viene aggiunta a un buffer di riordino. È questo buffer che la CPU può eseguire il suo riordino orientato all'efficienza. Sono le micro-operazioni, non le istruzioni effettive, che vengono riordinate.

In alcuni casi, soprattutto con CPU più avanzate, si può fare anche di più. Micro-op fusion è dove più micro-operazioni vengono combinate in una sola. Ad esempio, una sequenza di semplici micro-operazioni può eseguire un'azione che può essere eseguita con un'unica istruzione più complessa. Riducendo il numero di micro-operazioni eseguite, il processo può essere completato più velocemente. Ciò riduce anche il numero di cambiamenti di stato riducendo il consumo energetico. Le istruzioni complete possono anche essere analizzate e combinate in strutture di micro-operazioni più efficienti.

Alcune CPU utilizzano una cache per micro-operazioni. Questo memorizza sequenze di micro-operazioni completamente decodificate che possono essere riutilizzate se richiamate di nuovo. In genere, la dimensione di tale cache è indicata dal numero di micro-operazioni che può memorizzare piuttosto che dalla capacità in byte.

Conclusione

Una micro-operazione è un'implementazione specifica della CPU di un set di istruzioni. Le istruzioni vengono decodificate in una serie di micro-operazioni. Queste micro-operazioni sono molto più facili da eseguire in pipeline in modo più efficiente e quindi fanno un uso migliore delle risorse della CPU. Poiché le micro-operazioni non sono codificate nel set di istruzioni, possono essere personalizzate in base all'hardware specifico di ogni generazione di CPU. Le micro-operazioni sono spesso abbreviate in micro-operazioni o addirittura μops. Che usa la lettera greca μ ( pronunciata Mu ), il simbolo SI per il micro prefisso.



Leave a Comment

Come far funzionare Spotify nel nuovo Garmin Venu

Come far funzionare Spotify nel nuovo Garmin Venu

Scopri come configurare Spotify sul tuo Garmin Venu per ascoltare la tua musica preferita mentre ti alleni.

Risoluzione dei problemi dellapp Blink quando la fotocamera è offline

Risoluzione dei problemi dellapp Blink quando la fotocamera è offline

Scopri come risolvere i problemi dell

S Pen rispetto a Apple Pencil

S Pen rispetto a Apple Pencil

Scopri le differenze tra S Pen e Apple Pencil, due accessori per disegnare e prendere appunti, analizzando design, prestazioni e costi.

Che cosè WPS e come funziona?

Che cosè WPS e come funziona?

Scopri tutto su cosa è WPS e come funziona, insieme ai suoi vantaggi e svantaggi.

La TV Samsung non salva le impostazioni dellimmagine

La TV Samsung non salva le impostazioni dellimmagine

Scopri come risolvere il problema della tua TV Samsung che non salva le impostazioni dell

Come acquisire uno screenshot su un laptop Chromebook

Come acquisire uno screenshot su un laptop Chromebook

Guida dettagliata su come acquisire screenshot a schermo intero e parziale su Chromebook. Segui questi passaggi per facilitare la tua esperienza.

Correggi Chromebook Errore durante linstallazione di Linux Beta

Correggi Chromebook Errore durante linstallazione di Linux Beta

Se si è verificato un errore durante l

Guida ai materiali di stampa 3D: cosa sapere sul TPU

Guida ai materiali di stampa 3D: cosa sapere sul TPU

Per ottenere i migliori risultati nella stampa 3D, ecco cosa devi sapere sul TPU e i suoi utilizzi.

Che cosa fa Blocco scorrimento?

Che cosa fa Blocco scorrimento?

Il blocco dello scorrimento è un tasto sulla maggior parte delle tastiere, sebbene raramente venga utilizzato. Scopri come funziona e la sua utilità nei moderni software.

È possibile aggiornare la memoria del Chromebook?

È possibile aggiornare la memoria del Chromebook?

Scopri se è possibile aggiornare la memoria del tuo Chromebook e quali sono le migliori opzioni per ottimizzare le prestazioni del dispositivo.