Przetwarzanie równoległesprzęt 2 Rafał Walkowiak Wybór 17.01.2015 1 1
Sieci połączeń komputerów równoległych (1) Zadanie: przesyłanie danych pomiędzy węzłami przetwarzającymi, pomiędzy pamięcią a węzłami przetwarzającymi Parametry: liczba wejść, wyjść, zdolność jednoczesnego łączenia, siła sygnału, długość łącza. Sieci połączeń: statyczne lub dynamiczne Sieci statyczne (ang. direct network) łącza komunikacyjne punkt-punkt, bezpośrednie sieci połączeń. Sieci dynamiczne (ang. indirect network) - łącza i przełączniki, np. ścieżka przepływu danych pomiędzy procesorem a bankami pamięci jest tworzona na bieżąco za pomocą przełączników łączących łącza. 2 2
Sieci połączeń komputerów równoległych (2) Sieć statyczna Sieć dynamiczna procesor złącze sieci element przełączający 3 3
Sieci połączeń komputerów równoległych (3) Przełączniki (ang. switch) zbiór portów wejściowych i wyjściowych (stopień przełącznika), buforowanie danych - przy konflikcie wyjścia, zmienna marszrutyzacja - obniżanie zagęszczenia ruchu, zwielokrotnienie (ang. multicast) - te same dane do wielu wyjść, powiązanie wejść i wyjść realizowane za pomocą: przełącznic, wieloportowych pamięci, multiplexerów-demultiplexerów, multiplexowanych magistral. Złącza sieci (ang. network interface) dostarczanie i odbieranie danych z sieci, pakietyzacja, określanie danych trasowania komunikatów, dostosowywanie prędkości buforowanie, sprawdzanie błędów transmisji. występują na magistrali I/O lub magistrali pamięci procesora. 4 4
Topologie sieci połączeń Magistrala: Medium wspólne dla wszystkich węzłów Czas dostępu ograniczony przez liczbę węzłów przyłączonych do magistrali brak skalowalności przepustowości - źle Koszt sieci rośnie liniowo ze wzrostem liczby przyłączonych węzłów dobrze. Wprowadzenie pamięci podręcznej znacznie obniża wymagania na przepustowość współdzielonej przez procesory magistrali. 5 5
Topologie sieci połączeń Przełącznica krzyżowa (ang. crossbar network) Cecha: brak blokowania procesorów realizujących dostęp do różnych portów pamięci: liczba banków >liczby procesorów Wada: brak skalowalności kosztu, jeżeli b>p, liczba przełączników = pb > p 2 szybko rośnie z p procesory - p banki pamięci b Element przełączający 6 6
Topologie sieci połączeń Wielopoziomowe sieci połączeń Po oziom 3 Poziom 2 po oziom 1 7.10.12 7 7
Sieć omega (przykład łączenia) 000 001 010 011 100 101 110 111 000 001 010 011 100 101 110 111 Sieć połączeń omega jest siecią blokującą: realizacja połączenia między 010 i 100 oraz 110 i 110 wymaga korzystania z tego samego łącza między poziomem 1 i 2 sieci. 8 8
Statyczne sieci połączeń Sieć pełna: bezpośrednie połączenie pomiędzy każdymi dwoma wierzchołkami, statyczny odpowiednik sieci na tablicy przełaczników Gwiazda: jeden procesor procesorem centralnym (jest wąskim gardłem), przekazuje komunikaty pomiędzy każdymi dwoma pozostałymi węzłami, połączenie podobne do magistrali. Łańcuch: każdy węzeł oprócz pierwszego i ostatniego ma dwóch sąsiadów. Łańcuch zamknięty (pierścień): każdy z węzłów ma dwóch sąsiadów. 9 9
Statyczne sieci połączeń: k-d krata (mesh) Topologie sieci połączeń Zawierają k węzłów umieszczonych w każdym spośród d wymiarów k=n, d=1 łańcuch k=n, zamknięta to D wymiarowy torus k=2, D wymiarowa hyperkostka 0 1 2-1 2-2 2-3 00 01 10 11 00 0 10 0 010 11 0 101 111 4-2 4-2 zamknięta 0 00 1 011 Numeracja: Procesor w kolejnym wymiarze uzyskuje wartość 1 na kolejnej pozycji binarnej numeracji. Odległość: między węzłami jest równa liczbie różniących się pozycji w binarnej numeracji węzłów. 10 10
Drzewiaste topologie sieci połączeń Sieć połączeń typu drzewo posiada jedno połączenie pomiędzy dowolną parą węzłów. Szczególne wersje drzew to gwiazda i łańcuch. Drzewo statyczne posiada element przetwarzający w każdym węźle drzewa, drzewo dynamiczne układ przełączający. Drzewa charakteryzują się dużymi wymaganiami na przepustowość wyższych poziomów. Rozwiązanie stanowi zwiększenie liczby łączy komunikacyjnych i przełączników na wyższych poziomach drzewa dynamicznego drzewo grube (ang. Fat tree). Węzeł przetwarzający Węzeł przełączający 11 11