Differenza tra concorrenza e parallelismo

Autore: Laura McKinney
Data Della Creazione: 1 Aprile 2021
Data Di Aggiornamento: 1 Luglio 2024
Anonim
Concurrency vs Parallelism Explained With My Cats
Video: Concurrency vs Parallelism Explained With My Cats

Contenuto


Concorrenza e parallelismo sono termini correlati ma non uguali e spesso erroneamente concepiti come termini simili. La differenza cruciale tra concorrenza e parallelismo è quella concorrenza si tratta di affrontare molte cose allo stesso tempo (dà l'illusione della simultaneità) o di gestire eventi simultanei essenzialmente nascondendo la latenza. Anzi,parallelismo si tratta di fare molte cose contemporaneamente per aumentare la velocità.

I processi di esecuzione in parallelo devono essere simultanei a meno che non siano gestiti nello stesso istante, ma i processi di esecuzione simultanea non potrebbero mai essere paralleli perché non vengono elaborati nello stesso istante.

  1. Tabella di comparazione
  2. Definizione
  3. Differenze chiave
  4. Conclusione

Tabella di comparazione

Base per il confrontoConcorrenza
Parallelismo
Di base È l'atto di gestire ed eseguire più calcoli contemporaneamente.È l'atto di eseguire più calcoli contemporaneamente.
Raggiunto attraversoOperazione di interfogliaturaUtilizzo di più CPU
BeneficiAumento della quantità di lavoro svolto alla volta.Produttività migliorata, accelerazione computazionale
UtilizzareCon commutazionePiù CPU per il funzionamento di più processi.
Unità di elaborazione richiesteProbabilmente singlemultiplo
EsempioEsecuzione di più applicazioni contemporaneamente.Esecuzione del crawler Web su un cluster.


Definizione di concorrenza

Concorrenza è una tecnica utilizzata per ridurre il valore di tempo di risposta del sistema utilizzando una singola unità di elaborazione o elaborazione sequenziale. Un'attività è divisa in più parti e la sua parte viene elaborata contemporaneamente ma non nello stesso istante. Produce l'illusione del parallelismo, ma in realtà i blocchi di un compito non vengono elaborati parallelamente. La concorrenza è ottenuta da interleaving funzionamento dei processi sulla CPU, in altre parole tramite commutazione in cui il controllo viene rapidamente commutato tra diversi thread di processi e la commutazione è irriconoscibile. Questo è il motivo per cui sembra l'elaborazione parallela.

La concorrenza impartisce accesso multipartitico alle risorse condivise e richiede una qualche forma di comunicazione. Funziona su un thread quando sta facendo progressi utili, quindi interrompe il thread e passa a thread diversi a meno che non stia facendo progressi utili.


Definizione di parallelismo

Parallelismo è stato ideato allo scopo di aumentare il velocità computazionale utilizzando più processori. È una tecnica per eseguire contemporaneamente i diversi compiti nello stesso istante. Coinvolge diverse unità di elaborazione di elaborazione indipendenti o dispositivi di elaborazione che operano in parallelo e svolgono compiti al fine di aumentare la velocità di calcolo e migliorare la produttività.

Il parallelismo comporta la sovrapposizione delle attività di CPU e I / O in un processo con le attività di CPU e I / O di un altro processo. Considerando che quando viene implementata la concorrenza, la velocità viene aumentata sovrapponendo le attività I / O di un processo con il processo CPU di un altro processo.

  1. La concorrenza è l'atto di eseguire e gestire più attività contemporaneamente. D'altra parte, il parallelismo è l'atto di eseguire vari compiti contemporaneamente.
  2. Il parallelismo si ottiene utilizzando più CPU, come un sistema multiprocessore e gestendo processi diversi su queste unità di elaborazione o CPU. Al contrario, la concorrenza si ottiene attraverso il funzionamento a interfacce dei processi sulla CPU e in particolare con il cambio.
  3. La concorrenza può essere implementata utilizzando una singola unità di elaborazione, mentre ciò non è possibile in caso di parallelismo, richiede più unità di elaborazione.

Conclusione

In sintesi, la concorrenza e il parallelismo non sono esattamente simili e possono essere distinti. La concorrenza potrebbe comportare le diverse attività in esecuzione e che hanno tempo di sovrapposizione. D'altro canto, il parallelismo implica l'esecuzione simultanea di compiti diversi e tende ad avere lo stesso di partenza e fine tempo.