Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako sa líšia paralelné výpočty a distribuované z hľadiska ich prístupu k efektívnemu spracovaniu úloh?

Cieľom paralelného výpočtu aj distribuovaného výpočtu je pre efektívne spracovanie úloh, ale výrazne sa líšia v ich prístupe:

paralelné výpočty:

* Focus: Vykonanie viacerých výpočtov * súčasne * v rámci jedného počítačového systému. V tom istom stroji to využíva viac jednotiek spracovania (jadrá, vlákna atď.).

* komunikácia: Komunikácia medzi spracovateľskými jednotkami je pomerne rýchla a efektívna, pretože zdieľajú rovnaký pamäťový priestor (alebo aspoň majú vysokorýchlostné prepojenie). Zdieľanie údajov je často jednoduché.

* Programovací model: Často zahŕňa použitie techník, ako sú pokyny pre multithreading, multiprocessing alebo SIMD (jednotlivé inštrukcie, viac údajov) pokyny. Knižnice ako OpenMP, MPI (aj keď sa používajú aj v distribuovaných) a CUDA sa bežne používajú.

* škálovateľnosť: Obmedzené fyzickými zdrojmi (počet jadier, pamäť, šírka pásma I/O) jedného stroja. Pridanie ďalšieho výkonu spracovania vyžaduje získanie výkonnejšieho stroja.

* Príklad: Spustenie komplexnej simulácie pomocou viacerých jadier na jednej špičkovej pracovnej stanici.

Distribuované výpočty:

* Focus: Vykonanie viacerých výpočtov * Súbežne * vo viacerých nezávislých počítačoch (uzlov) pripojených sieťou.

* komunikácia: Komunikácia medzi uzlami sa spolieha na sieť (napr. Ethernet, Infiniband), ktorá je vo svojej podstate pomalšia a zložitejšia ako interná komunikácia v jednom stroji. Zdieľanie údajov si vyžaduje explicitné komunikačné mechanizmy. Latencia siete a šírka pásma sa stávajú kritickými faktormi.

* Programovací model: Často zahŕňa použitie techník prekladania správ (napr. MPI) alebo zdieľaných architektúr (napr. Použitie databáz). Koordinácia medzi uzlami je náročnejšia.

* škálovateľnosť: Môže škálovať na veľmi veľké problémy pridaním ďalších počítačov do siete. Teoretický limit je oveľa vyšší ako paralelné výpočty na jednom počítači.

* Príklad: Veľký webový vyhľadávací nástroj, kde veľa serverov spolupracuje pri indexovaní a získavaní webových stránok. Cloud computing je výrazným príkladom distribuovaného výpočtu.

Kľúčové rozdiely sú zhrnuté:

| Funkcia | Paralelné výpočty Distribuované výpočty

| ----------------- | --------------------------------------------- | ----------------------------------------- |

| hardvér | Jeden stroj, viac procesorov Viaceré nezávislé stroje

| komunikácia | Rýchla, zdieľaná pamäť (často) Pomalšie, sieťové |

| škálovateľnosť | Obmedzené zdrojmi jedného stroja Vysoko škálovateľné |

| zložitosť | Relatívne jednoduchšie pre program Výrazne zložitejšie program

| Zdieľanie údajov | Ľahšie, často implicitné Zložitejšia a explicitná komunikácia

V niektorých prípadoch by ste mohli kombinovať oba prístupy - pomocou zhluku počítačov (distribuované výpočty), kde každý počítač sám vykonáva paralelné výpočty. To ponúka to najlepšie z oboch svetov:vysoká škálovateľnosť a efektívne využitie jednotlivých strojov.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené