Ce este calculul paralel?

Calculul paralel are loc atunci când un computer realizează mai multe sarcini simultan. Această tehnică poate permite computerelor să lucreze mai repede decât să facă un singur lucru deodată, la fel cum o persoană cu două mâini libere poate transporta mai mult decât o persoană cu o mână liberă. În mod tradițional, programele de calculator sunt concepute în moduri care nu permit neapărat calculul paralel, ci trebuie să fie efectuate pas la un moment dat. Pentru ca un program să fie calculat în acest fel, trebuie să fie proiectat astfel încât să poată fi împărțit în sarcini mai mici care pot fi efectuate individual. Ca un exemplu al modului în care calculul paralel se raportează la o persoană obișnuită, multe computere personale au mai multe nuclee de procesare care le permit să proceseze mai multe sarcini în același timp, în loc de o sarcină după alta, ca în cazul unui computer cu un singur procesor.

Scrierea unui program de calculator astfel încât să poată fi împărțit în sarcini separate pentru a fi executate separat este adesea mai greu decât scrierea pe rând, folosind execuția liniară. Cu programele de calculator care vor fi executate secvenţial, prima sarcină determină de obicei informaţia care este parte integrantă a celei de-a doua sarcini din secvenţă. Fără acel prim bit de informație care rezultă din îndeplinirea primei sarcini, a doua sarcină ar putea fi inutilă de realizat. Când scrieți un program astfel încât să poată fi împărțit în diferite părți, sincronizarea lucrurilor astfel încât diferitele părți ale programului să aibă informațiile de care au nevoie atunci când au nevoie și să nu ia decizii bazate pe informații învechite poate fi o provocare unică. Această îngrijorare este de obicei asociată cu cele mai comune tipuri de erori de computer cu care se confruntă programele de calcul paralele.

Principalul avantaj al calculului paralel este că programele se pot executa mai rapid. Dacă hardware-ul computerului care execută un program folosind calculul paralel are arhitectura, cum ar fi mai mult de o unitate centrală de procesare (CPU), calculul paralel poate fi o tehnică eficientă. Ca o analogie, dacă un om poate transporta o cutie la un moment dat și că un procesor este un om, un program care se execută secvenţial ar putea fi capabil să transporte doar o cutie la un moment dat. Când se execută în paralel, același program poate fi împărțit în două sarcini separate și, dacă există două CPU-uri pentru a profita de el, transportați ambele cutii în același timp. Făcând acest lucru, bărbatul poartă ambele cutii și își încheie sarcina mai repede.