Katere so različne vrste tehnologije vzporedne obdelave?

Vzporedna obdelava je vrsta računalniške obdelave, pri kateri so velike računalniške naloge razdeljene na manjše podnaloge, ki se nato obdelajo sočasno ali vzporedno, ne pa zaporedno. Ta tehnologija se pogosto uporablja v sodobnem računalništvu, zlasti za napredne probleme, kot so tisti, ki jih obravnavajo naravoslovje. Primeri tehnologije vzporedne obdelave v eni napravi vključujejo simetrično večprocesiranje in večjedrno obdelavo. Več računalnikov je mogoče tudi povezati za vzporedno delo z metodami, kot so porazdeljeno računalništvo, računalniške gruče in množično vzporedni računalniki.

Simetrični večprocesor je računalnik z enim skupnim glavnim pomnilnikom in primerkom operacijskega sistema, ki je povezan z več enakimi procesorji. Procesorji imajo enake zmogljivosti in so povezani s skupnim pomnilnikom, tako da je mogoče naloge enostavno dodeliti ali prerazporediti po potrebi, da uravnotežimo delovno obremenitev med njimi. Pri večjedrni obdelavi vsak procesor vsebuje vsaj dve centralni procesni enoti (CPU), imenovani jedri, ki sta odgovorni za branje in izvajanje navodil. V bistvu je večjedrni procesor pravzaprav več procesorjev v eni integrirani komponenti. To omogoča hitrejšo in učinkovitejšo komunikacijo med procesnimi jedri v primerjavi z večprocesorskimi računalniki, v katerih je vsak CPU ločena komponenta.

Večprocesorski računalniki se pogosto uporabljajo v znanstvenih in poslovnih aplikacijah. Manj pogosta je pri sistemih osebnih računalnikov, ki so običajno enoprocesorski modeli, čeprav so večprocesorji postali pogostejši na potrošniškem trgu. Računalniška programska oprema mora biti posebej zasnovana za večprocesorske računalnike, da v celoti izkoristi prednosti, ki jih lahko zagotovi, in zaradi tega ima ta vrsta programske opreme pogosto težave z zmogljivostjo na enoprocesorskem računalniku. Podobno imajo programi, napisani z enim samim procesorjem, običajno le omejene koristi od večprocesiranja, ker niso zasnovani tako, da bi ga izkoristili.

Tehnologija porazdeljene vzporedne obdelave uporablja več, sicer neodvisnih računalnikov, ki delajo na različnih delih problema vzporedno, ki so povezani prek interneta ali notranjega omrežja, tako da lahko komunicirajo med seboj. To vrsto tehnologije vzporedne obdelave je mogoče uporabiti z računalniki, ki so fizično oddaljeni drug od drugega, čeprav to ni nujno vedno tako. Povezani računalniki skupaj tvorijo tako imenovano računalniško mrežo.

Računalniške mreže so lahko zelo velike in lahko vključujejo na tisoče računalnikov, ki so lahko razširjeni po vsem svetu. Ti računalniki lahko hkrati delajo tudi na nepovezanih težavah, pri čemer naloge obdeluje omrežje, porazdeljeno med računalnike glede na to, koliko proste procesne zmogljivosti ima vsak v tem trenutku. Mrežno računalništvo se razlikuje od večine drugih sodobnih vzporednih računalništva, ker ena sama mreža pogosto vključuje raznolik nabor računalnikov različnih zmogljivosti in ne skupino enakih enot.

Računalniške gruče so oblika tehnologije vzporedne obdelave, pri kateri več povezanih računalnikov, običajno z enakimi zmogljivostmi, tesno sodeluje kot ena enota. Za razliko od simetričnega večprocesiranja, ki uporablja več procesorjev, ki si delijo skupni pomnilnik in operacijski sistem, je vsaka posamezna enota v gruči popoln samostojen računalnik. Ti so običajno na isti geografski lokaciji in so povezani v lokalno omrežje. Nekateri računalniki so zgrajeni posebej za uporabo v računalniških gručah, vendar je grozde mogoče oblikovati tudi s povezovanjem računalnikov, ki so bili prvotno zasnovani za samostojno delovanje.
Masivno vzporedni računalniki imajo nekaj podobnosti z gručnimi računalniki, ker so tudi sestavljeni iz več računalnikov, ki so združeni, vendar so veliko večji in običajno vsebujejo na stotine ali tisoče vozlišč. Imajo tudi svoje specializirane komponente, ki povezujejo posamezne računalnike, ki jih sestavljajo, medtem ko so računalniške gruče združene s standardno, že pripravljeno strojno opremo, ki se pogosto imenuje komponente blaga. Najnaprednejši masovno vzporedni računalniki so lahko resnično ogromni, saj vsebujejo več deset tisoč posameznih računalnikov, ki zapolnjujejo na tisoče kvadratnih metrov prostora in vsi delujejo skupaj. Večina naprednih svetovnih superračunalnikov, ki se uporabljajo za kompleksne izračune na področjih, kot sta astrofizika in globalno podnebno modeliranje, je tovrstnih.