Care sunt diferitele tipuri de tehnologie de procesare paralelă?

Procesarea paralelă este un tip de procesare computerizată în care sarcinile de calcul mari sunt împărțite în sub-sarcini mai mici care sunt apoi procesate simultan sau în paralel, mai degrabă decât secvenţial. Această tehnologie este utilizată pe scară largă în calculul modern, în special pentru probleme avansate, cum ar fi cele tratate în științele naturii. Exemplele de tehnologie de procesare paralelă într-un singur dispozitiv includ procesarea multi-procesare simetrică și procesarea multicore. Mai multe computere pot fi, de asemenea, conectate împreună pentru a lucra în paralel prin metode precum calculul distribuit, clusterele de computere și computerele masiv paralele.

Un multiprocesor simetric este un computer cu o singură memorie principală comună și o instanță de sistem de operare conectată la mai multe procesoare identice. Procesoarele au aceleași capacități și sunt conectate la o memorie comună, astfel încât sarcinile pot fi alocate sau reatribuite cu ușurință după cum este necesar pentru a echilibra sarcina de lucru între ele. În procesarea multicore, fiecare procesor conține cel puțin două unități centrale de procesare (CPU), numite nuclee, care sunt responsabile pentru citirea și executarea instrucțiunilor. În esență, un procesor multicore este de fapt mai multe procesoare într-o singură componentă integrată. Acest lucru permite o comunicare mai rapidă și mai eficientă între nucleele de procesare, în comparație cu computerele multiprocesor în care fiecare CPU este o componentă separată.

Calculatoarele multiprocesor sunt utilizate pe scară largă în aplicații științifice și de afaceri. Este mai puțin frecventă în sistemele de computere personale, care sunt de obicei modele cu uniprocesor, deși multiprocesoarele au devenit mai comune pe piața de consum. Software-ul de calculator trebuie să fie conceput special pentru computerele multiprocesor pentru a profita din plin de beneficiile pe care le poate oferi, iar acest tip de software are adesea probleme de performanță pe un computer cu un singur procesor. De asemenea, programele scrise cu un singur procesor în minte obțin de obicei doar beneficii limitate din multiprocesare, deoarece nu sunt concepute pentru a profita de aceasta.

Tehnologia de procesare paralelă distribuită utilizează mai multe computere, altfel independente, care lucrează la diferite părți ale unei probleme în paralel, legate între ele prin Internet sau o rețea internă, astfel încât să poată comunica între ele. Acest tip de tehnologie de procesare paralelă poate fi utilizat cu computere care sunt îndepărtate fizic unul de celălalt, deși nu este neapărat întotdeauna cazul. Împreună, calculatoarele legate formează ceea ce se numește o grilă de calcul.

Grilele de calcul pot fi foarte mari, încorporând potențial mii de computere care ar putea fi răspândite în întreaga lume. Aceste computere ar putea, de asemenea, să lucreze la probleme care nu au legătură în același timp, sarcinile fiind lucrate de către rețea distribuite între computere în funcție de capacitatea de procesare de rezervă are fiecare în acel moment. Grid computing diferă de majoritatea altor calcule paralele moderne, deoarece o singură grilă include adesea o gamă diversă de computere cu capacități diferite, mai degrabă decât un grup de unități identice.

Clusterele de computere sunt o formă de tehnologie de procesare paralelă în care mai multe computere conectate, de obicei cu capacități identice, lucrează strâns împreună ca o singură unitate. Spre deosebire de multiprocesarea simetrică, care utilizează mai multe procesoare care împărtășesc o memorie și un sistem de operare comune, fiecare unitate individuală dintr-un cluster este un computer complet independent. Acestea se află de obicei în aceeași locație geografică și sunt conectate la o rețea locală. Unele computere sunt construite special pentru a fi utilizate în clustere de computere, dar și clustere pot fi formate prin conectarea computerelor care au fost proiectate inițial să funcționeze autonom.
Calculatoarele masiv paralele au unele asemănări cu computerele cluster, deoarece sunt, de asemenea, compuse din mai multe computere unite, dar sunt mult mai mari și conțin de obicei sute sau mii de noduri. De asemenea, au propriile lor componente specializate care leagă computerele individuale care le cuprind împreună, în timp ce grupurile de computere sunt unite între ele prin hardware standard, denumit adesea componente de bază. Cele mai avansate computere paralele pot fi cu adevărat colosale, conținând zeci de mii de computere individuale care umplu mii de metri pătrați de spațiu, toate lucrând împreună. Cele mai multe dintre supercalculatoarele avansate ale lumii, utilizate pentru calcule complexe în domenii precum astrofizica și modelarea climei globale, sunt de acest tip.