Jakie są różne typy technologii przetwarzania równoległego?

Przetwarzanie równoległe jest rodzajem przetwarzania komputerowego, w którym duże zadania obliczeniowe są dzielone na mniejsze podzadania, które są następnie przetwarzane jednocześnie lub równolegle, a nie sekwencyjnie. Technologia ta jest szeroko stosowana we współczesnym środowisku komputerowym, szczególnie w przypadku zaawansowanych problemów, takich jak te, które są przedmiotem nauk przyrodniczych. Przykłady technologii przetwarzania równoległego w jednym urządzeniu obejmują symetryczne przetwarzanie wieloprocesorowe i przetwarzanie wielordzeniowe. Wiele komputerów można również połączyć ze sobą, aby pracować równolegle za pomocą metod takich jak przetwarzanie rozproszone, klastry komputerowe i komputery masowo równoległe.

Symetryczny multiprocesor to komputer z jedną wspólną instancją pamięci głównej i instancją systemu operacyjnego połączoną z wieloma identycznymi procesorami. Procesory mają te same możliwości i są połączone ze wspólną pamięcią, więc zadania można łatwo przypisywać lub ponownie przypisywać w razie potrzeby w celu zrównoważenia obciążenia między nimi. W przetwarzaniu wielordzeniowym każdy procesor zawiera co najmniej dwie centralne jednostki przetwarzające (CPU), zwane rdzeniami, które są odpowiedzialne za czytanie i wykonywanie instrukcji. Zasadniczo procesor wielordzeniowy to tak naprawdę wiele procesorów w jednym zintegrowanym komponencie. Pozwala to na szybszą i bardziej wydajną komunikację między rdzeniami przetwarzającymi w porównaniu z komputerami wieloprocesorowymi, w których każdy procesor jest osobnym elementem.

Komputery wieloprocesorowe są szeroko stosowane w aplikacjach naukowych i biznesowych. Jest to mniej powszechne w komputerowych systemach osobistych, które zwykle są projektami jednoprocesorowymi, chociaż multiprocesory stały się bardziej powszechne na rynku konsumenckim. Oprogramowanie komputerowe musi być specjalnie zaprojektowane dla komputerów wieloprocesorowych, aby w pełni korzystać z oferowanych przez nie korzyści, a tego typu oprogramowanie często ma problemy z wydajnością na komputerze jednoprocesorowym. Podobnie, programy napisane z myślą o jednym procesorze zwykle czerpią jedynie ograniczone korzyści z wieloprocesowego przetwarzania, ponieważ nie są zaprojektowane do korzystania z niego.

Technologia rozproszonego przetwarzania równoległego wykorzystuje wiele, w innym przypadku niezależnych komputerów pracujących równolegle na różnych częściach problemu, połączonych ze sobą przez Internet lub sieć wewnętrzną, aby mogły się ze sobą komunikować. Tego rodzaju technologii przetwarzania równoległego można używać z komputerami, które są fizycznie od siebie oddalone, choć nie zawsze tak jest. Połączone komputery tworzą razem tak zwaną siatkę obliczeniową.

Siatki obliczeniowe mogą być bardzo duże, potencjalnie zawierające tysiące komputerów, które mogą być rozproszone po całym świecie. Komputery te mogą jednocześnie pracować nad niepowiązanymi problemami, przy czym zadania są realizowane przez sieć rozproszoną między komputerami zgodnie z tym, ile w danym momencie ma wolne moce obliczeniowe. Obliczenia sieciowe różnią się od większości innych współczesnych obliczeń równoległych, ponieważ pojedyncza sieć często zawiera różnorodną gamę komputerów o różnych możliwościach, a nie grupę identycznych jednostek.

Klastry komputerowe są formą technologii przetwarzania równoległego, w której wiele połączonych komputerów, zwykle o identycznych możliwościach, ściśle ze sobą współpracuje jako jedna jednostka. W przeciwieństwie do symetrycznego przetwarzania wieloprocesorowego, które wykorzystuje wiele procesorów współużytkujących wspólną pamięć i system operacyjny, każda pojedyncza jednostka w klastrze jest kompletnym samodzielnym komputerem. Zazwyczaj znajdują się w tym samym położeniu geograficznym i są podłączone do sieci lokalnej. Niektóre komputery są budowane specjalnie do użytku w klastrach komputerowych, ale klastry można również tworzyć, łącząc komputery, które pierwotnie miały działać autonomicznie.

Komputery masowo równoległe mają pewne podobieństwa do komputerów klastrowych, ponieważ składają się również z wielu połączonych ze sobą komputerów, ale są znacznie większe i zwykle zawierają setki lub tysiące węzłów. Mają także własne wyspecjalizowane komponenty łączące ze sobą poszczególne komputery, podczas gdy klastry komputerowe są łączone ze sobą za pomocą standardowego, gotowego sprzętu często nazywanego komponentami towarowymi. Najbardziej zaawansowane masowo równoległe komputery mogą być naprawdę kolosalne, zawierające dziesiątki tysięcy pojedynczych komputerów wypełniających tysiące metrów kwadratowych przestrzeni, wszystkie współpracujące ze sobą. Większość zaawansowanych superkomputerów na świecie, wykorzystywanych do złożonych obliczeń w obszarach takich jak astrofizyka i globalne modelowanie klimatu, jest tego typu.

INNE JĘZYKI

Czy ten artykuł był pomocny? Dzięki za opinie Dzięki za opinie

Jak możemy pomóc? Jak możemy pomóc?