Come capire Parallel Processing

December 10

Come capire Parallel Processing


L'elaborazione parallela è un metodo per aumentare la velocità di calcolo eseguendo contemporaneamente istruzioni di programma sequenziale su più processori per computer. Intraprendendo più passi di programma allo stesso tempo, il tempo complessivo necessario per l'esecuzione del programma viene accorciato. Anche se l'elaborazione parallela è stata usata per molti anni in mainframe e workstation computer di fascia alta, che solo di recente ha trovato la sua strada in comuni computer desktop e notebook tramite più unità di elaborazione centrale (CPU) di base.

istruzione

Programmi singolo thread

1 La maggior parte del software corrente è thread singolo. software unico filo significa che le istruzioni del software devono essere elaborati da un singolo processore.

2 L'elaborazione parallela con il software singolo thread è un vantaggio quando più di un programma singolo thread è in esecuzione.

3 Quando due programmi singoli filettatura vengono eseguiti su un sistema con due processori, ad esempio su un moderno sistema dual core, un core processore esegue le istruzioni per un programma threaded singolo mentre l'altro core processore esegue le istruzioni per l'altro programma filettato singolo.

4 Se più di due programmi filettati singoli sono in esecuzione, il sistema operativo, hardware e CPU multi-core inviare istruzioni ai nuclei nel modo più efficiente possibile.

5 L'aggiunta di più core o più processori consente più programmi singolo thread di eseguire contemporaneamente senza degradazione delle prestazioni del sistema.

I programmi multi-thread

6 programmi multi-thread sono progettati per avere le loro istruzioni eseguiti contemporaneamente su più processori.

7 Quando i programmi multi-thread vengono eseguiti, le istruzioni vengono inviate in modo sequenziale a due o più processori per l'esecuzione allo stesso tempo. Poiché un sistema dual-core può eseguire due calcoli allo stesso tempo, il tempo di elaborazione per un programma multi-threaded è effettivamente raddoppiato. Nei prossimi CPU quad-core, la velocità di elaborazione efficace sarà effettivamente quadruplicato.

8 Quando due o più applicazioni multi-thread vengono eseguiti simultaneamente, il sistema operativo e il lavoro della CPU insieme per eseguire due programmi più efficiente.

9 Allo stato attuale, molto poche applicazioni sono multi-threaded. Ora che più CPU di base sono comuni, molte applicazioni verranno riscritti per trarre il massimo vantaggio di elaborazione parallela.