Architetture dei processori/Single Instruction Multiple Data: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: apostrofo dopo l'articolo indeterminativo |
Nessun oggetto della modifica |
||
Riga 5:
Quasi tutti i moderni processori per incrementare le loro prestazioni dell'elaborazione dei dati multimediali fanno uso di '''unità [[w:SIMD|SIMD]]'''. Le unità SIMD sono unità basate su più unità specializzate per elaborare dati diversi in parallelo. Questa architettura viene utilizzata dai [[Architetture dei processori/Processore vettoriale|processori vettoriali]] o da processori che funzionano in parallelo.
In passato venivano prodotti un numero elevato di dispositivi dedicati allo svolgimento di compiti specifici. Usualmente questi dispositivi erano [[w:Digital Signal Processor|DSP]] opportunamente programmati. La differenza fondamentale tra le istruzioni SIMD e i DSP
Nell'elaborazione dei dati multimediali spesso si incontrano algoritmi che possono avvantaggiarsi di un'architettura SIMD. Per esempio per cambiare la luminosità di un'immagine un microprocessore dovrebbe caricare ogni pixel che compone l'immagine dei suoi registri, effettuare la modifica della luminosità e poi salvare i risultati in memoria. Un processore SIMD eseguirebbe prima un' istruzione che caricherebbe con un'unica operazione un certo numero di pixel (il numero preciso dipende dall'architettura) poi il processore modificherebbe tutti i dati in parallelo e in seguito li salverebbe tutti contemporaneamente in memoria. Eseguire le operazioni a blocchi invece che agire sui singoli pixel rende le operazioni molto più efficienti dato che i moderni computer sono progettati per trasferire i dati a blocchi e sono inefficienti nei singoli accessi alla memoria.
|