SIMD

Definizione rapida

Modello di calcolo in cui una singola istruzione applica la stessa operazione a più valori contemporaneamente.

Spiegazione

SIMD accelera attività che ripetono lo stesso calcolo su vettori di dati, come immagini, audio, matrici e simulazioni. Registri larghi contengono più elementi e le unità del processore li sommano, confrontano o trasformano in parallelo.

Esempio pratico

Un'istruzione SIMD può aumentare in un solo passaggio la luminosità di più pixel memorizzati nello stesso registro vettoriale.

Spiegazione tecnica

La larghezza del vettore e il tipo degli elementi determinano quante operazioni avvengono per istruzione. Allineamento, ramificazioni e code non multiple della larghezza possono richiedere gestione aggiuntiva.

Da non confondere con

Non è multithreading: SIMD applica un'istruzione a più dati nello stesso flusso, mentre i thread eseguono flussi di istruzioni distinti.