L'elaborazione parallela può essere descritta come una classe di tecniche che consentono al sistema di eseguire attività di elaborazione dati simultanee per aumentare la velocità di calcolo di un sistema informatico.
Un sistema di elaborazione parallelo può eseguire l'elaborazione simultanea dei dati per ottenere tempi di esecuzione più rapidi. Ad esempio, mentre un'istruzione viene elaborata nel componente ALU della CPU, l'istruzione successiva può essere letta dalla memoria.
Lo scopo principale dell'elaborazione parallela è migliorare la capacità di elaborazione del computer e aumentarne il rendimento, ovvero la quantità di elaborazione che può essere eseguita durante un dato intervallo di tempo.
Un sistema di elaborazione parallelo può essere ottenuto avendo una molteplicità di unità funzionali che eseguono operazioni identiche o diverse simultaneamente. I dati possono essere distribuiti tra varie unità funzionali multiple.
Il diagramma seguente mostra un possibile modo di separare l'unità di esecuzione in otto unità funzionali che operano in parallelo.
L'operazione eseguita in ciascuna unità funzionale è indicata in ciascun blocco se lo schema:
- Il sommatore e il moltiplicatore intero eseguono l'operazione aritmetica con numeri interi.
- Le operazioni in virgola mobile sono separate in tre circuiti che operano in parallelo.
- Le operazioni logiche, di spostamento e di incremento possono essere eseguite contemporaneamente su dati diversi. Tutte le unità sono indipendenti l'una dall'altra, quindi un numero può essere spostato mentre un altro numero viene incrementato.