Programowanie Równoległe i Rozproszone

Wielkość: px
Rozpocząć pokaz od strony:

Download "Programowanie Równoległe i Rozproszone"

Transkrypt

1 Programowanie Równoległe i Rozproszone Lucjan Stapp Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska (l.stapp@mini.pw.edu.pl) 1/69 PRiR Wykład 1 Ćwiczenia Zasady zaliczania Aktywność i obecność (-20; +20) pkt (część A) Test* (27 kwiecień??) 50 pkt (część B) Egzamin część pisemna 100 pkt (część C) Dopuszczenie do części ustnej A + B + C >95pkt (55,88%) * Test zamiast wykładu. 2/69 PRiR Wykład 1 Literatura 1. Lester, Bruce, P., The Art of Parallel Programming, Prentice Hall, Brinch Hansen, P., The Search for Simplicity: Essays in Parallel Programming, IEEE, Quinn, Michael J., Parallel Programming in C with MPI and OpenMP, McGraw Hill, /69 PRiR Wykład 1 Przygotował: Lucjan Stapp 1

2 3 pomysły z późnych lat 60: Sztuczna inteligencja Pamięć bąbelkowa (ang. Bubble memory) Programowanie równoległe Wstęp 4/69 PRiR Wykład 1 Wstęp Dlaczego równolegle? Przetwarzanie równoległe nie zastępujeaktualnej technologii, ale jest jej akceleratorem. Przypuśćmy, że mamy problem, który wymaga 10 gigaflops (10 miliardów = operacji zmiennoprzecinkowych na sekundę) Rozwiązanie: zaczekać 5 lat na Intel Pxx (czy jakkolwiek będzie zwany) albo użyć 20 Pentium III pracujących równolegle i mieć rozwiązanie dzisiaj 5/69 PRiR Wykład 1 Wstęp Dlaczego równolegle? Przetwarzanie równoległe nie zastępujeaktualnej technologii, ale jest jej akceleratorem. Przypuśćmy, że mamy problem, który wymaga 100 godzin obliczeń dla Pentium 4.2.0*2000 MHz, ale potrzebujemy wyniku w czasie godziny. Rozwiązanie: czekać 5 lat na Intel Pxx (czy jakkolwiek będzie zwany) albo podzielić pytanie na mniejsze pod-zadania pracujące równolegle i mieć rozwiązanie w kilka minut. 6/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 2

3 Wstęp Dlaczego równolegle? Przetwarzanie równoległe nie zastępujeaktualnej technologii, ale jest jej akceleratorem. It is a lot easier to harness 100 horses than to grow one that s 100 times bigger "O wiele łatwiej jest zaprząc 100 koni niż wyhodować jednego, który jest 100 razy większy. Ale I know how to make 4 horses pull a cart - I don't know how to make 1024 chickens do it. Enrico Clementi 7/69 PRiR Wykład 1 Wstęp Zdefiniowanie przetwarzania równoległego nie jest łatwe. Dosłownie oznacza to wykonywanie kilku instrukcji równocześnie, a nie jedna za drugą (przetwarzanie sekwencyjne): mikro-paralelizm - projektowanie jednochipowego mikroprocesora (np. RISC); procesory ogólnego zastosowania współpracujące ze sobą -cel tego wykładu. 8/69 PRiR Wykład 1 Typowy podział (systematyka Flynna -1963): Wstęp Single Instruction Single Data Multi Multi 9/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 3

4 Systematyka Flynna SISD (wymowa sees-dee) przetwarzanie sekwencyjne. Są to konwencjonalne systemy, które zawierają jeden CPU i dlatego mogą przetwarzać jeden strumień rozkazów, który jest wykonany szeregowo. Obecnie wiele dużych komputerów może mieć więcej niż jeden CPU, ale każdy z nich wykonuje niepowiązane ze sobą strumienie rozkazów. Dlatego takie systemy są maszynami SISD pracującymi na rozłącznych danych. Maszyny SISD to większość stacji roboczych takich firm jak np. DEC, Hewlett-Packard i Sun Microsystems. Definicja maszyn SISD jest podana tylko ze względów czysto formalnych, ten typ nie będzie omawiany na tym wykładzie. 10/69 PRiR Wykład 1 Systematyka Flynna MISD (wymowa mees-dee) brak zastosowań. Teoretycznie w tego typu maszynach wiele instrukcji powinno działać na jednym strumieniu danych. Trudno sobie wyobrazić taką maszynę i - jak dotąd - żadna maszyna tego typu nie została zbudowana. 11/69 PRiR Wykład 1 Systematyka Flynna SIMD (wymowa seem-dee) Można myśleć o maszynie typu SIMD jako o zbiorze procesorów zarządzanych przez inny procesor (kontrolny), który w każdym cyklu wysyła wspólną instrukcję każdemu procesorowi. Jest to połączenie grupy procesorów, które wykonują ten sam program na różnych danych (synchronizowanych przez ten sam zegar). Takie systemy często mają bardzo dużo jednostek przetwarzających, począwszy od do, wszystkie mogące wykonywać w jednym kroku tę samą instrukcję na różnych danych. Dzięki temu pojedyncza instrukcja wykonywana jest na wielu danych równolegle. 12/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 4

5 Systematyka Flynna SIMD (wymowa seem-dee) cd. Maszyny SIMD są często stosowane do obliczeń na macierzach (np. w analizie elementu skończonego, w modelowaniu zachowań sejsmicznych, prognozowaniu pogody). Pierwszą komercyjną maszyną typu SIMD był DAP (Distributed Array Processor- Rozproszona Macierz Procesorów) stworzona przez ICL, Wielka Brytania; CRAY T-90; CPP DAP Gamma II; Quadrics Apemille;. 13/69 PRiR Wykład 1 Systematyka Flynna SIMD (wymowa seem-dee) cd. Największym komercyjnym sukcesem maszyn SIMD jest Connection Machine CM-1 i CM-2 firmy Thinking Machines (przejętą przez SGI, teraz HP) zbudowana z ponad elementów obliczeniowych; była używana w zastosowaniach od badań wojskowych po animację komputerową. Connection Machine używają 1 bitowych elementów obliczeniowych, które dokonują tylko boolowskich kombinacji 1 bitu przeczytanego z pamięci z jednobitową wewnętrzną flagą. Router pakietów wbudowany w każdą 16 elementową jednostkę przetwarzającą skutecznie łączy ze sobą wszystkie procesory. Wszystkie obliczenia wykonywane są synchronicznie przez tablicę procesorów zgodnie ze wspólnym zegarem. 14/69 PRiR Wykład 1 Systematyka Flynna SIMD (wymowa seem-dee) cd. Procesory wektorowe (Vectorprocessors) Inną podklasą systemów SIMD są procesory wektorowe(ang. vectorprocessors). Procesory wektorowe działają na tablicach podobnych danych, a nie - jak standardowe procesory - na pojedynczych elementach. Kiedy dane mogą być przetwarzane przez te jednostki, wyniki mogą być dostarczane z tempem jednego, dwóch i - w specjalnych okolicznościach - trzech na cykl zegara (cykl zegara zdefiniowany jako podstawowa wewnętrzna jednostka czasu dla systemu). 15/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 5

6 SIMD (wymowa seem-dee) cd. Systematyka Flynna Procesory wektorowe (Vectorprocessors) Tak więc procesory wektorowe wykonują obliczenia na danych prawie równolegle, ale tylko jeśli obliczenia prowadzone są w trybie wektorowym. W takim przypadku są one kilka razy szybsze niż obliczenia wykonywane w konwencjonalnym trybie skalarnym. Ze względów praktycznych procesory wektorowe są klasyfikowane jako maszyny SIMD. Przykładem takiego systemu jest NEC 6i SX. 16/69 PRiR Wykład 1 SIMD z pamięcią dzieloną Ta podklasa maszyn jest niemal równoważna pojedynczemu procesorowi wektorowemu, mimo to istnieją inne interesujące maszyny w tej klasie. Procesory w systemie z pamięcią dzieloną komunikują się przez czytanie i pisanie do pamięci znajdującej się we wspólnej przestrzeni adresowej, co często implikuje wspólną (dzieloną) szynę. 17/69 PRiR Wykład 1 SIMD z pamięcią dzieloną SIMD z pamięcią dzieloną: architektura 18/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 6

7 SIMD z pamięcią dzieloną Jednoprocesorowa maszyna wektorowa będzie miała tylko jeden wyróżniony procesor wektorowy i system może nawet mieć skalarne operacje zmiennoprzecinkowe dzielone z procesorem wektorowym (jak było w niektórych systemach Cray). Należy zauważyć, że VPU nie posiada pamięci podręcznej (ang. cache). W wielu wypadkach jednostka wektorowa nie może z niej skorzystać, a prędkość wykonywania może zostać zmniejszona przez częste przepełnianie pamięci podręcznej. 19/69 PRiR Wykład 1 SIMD z pamięcią dzieloną Istniały, co prawda, jednostki takie jak CDC Cyber 205 i ETA-10, które ładowały argumenty bezpośrednio z pamięci i przechowywały wyniki także w pamięci. W dniu dzisiejszym procesory wektorowe korzystają z rejestrów wektorowych. To często nie zmniejsza prędkości przetwarzania, jednocześnie dostarczając większą elastyczność w zbieraniu argumentów i operacjach na nich z natychmiastowym rezultatem. 20/69 PRiR Wykład 1 SIMD z pamięcią dzieloną Na wcześniejszej ilustracji nie pokazane są szczegóły dotyczące połączenia między VPU a pamięcią. Jednak te detale są bardzo ważne dla wydajnej operacji wektorowej: gdy przepustowość pomiędzy pamięcią a VPU jest za mała, nie są czerpane pełne korzyści z VPU, ponieważ musi on czekać na argumenty i/albo musi czekać zanim wyniki zostaną zapisane w pamięci; kiedy stosunek wykonywanych operacji arytmetycznych do operacji czytania/zapisywania nie jest wystarczająco duży, aby zrekompensować tę sytuację, mogą pojawić się poważne straty wydajności. Problem zostanie omówiony w dalszej części wykładu. 21/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 7

8 SIMD z pamięcią dzieloną VPU są obrazowane jako pojedyncze bloki na naszej ilustracji. Istnieje znacząca różnica w strukturze jednostek tego typu. Każde VPU składa się z pewnej liczby wektorowych elementów funkcyjnych, albo "potoków". Pełnią one jedną bądź kilka funkcji w VPU. Każde VPU posiada potoki zaprojektowane tak, aby zapewnić funkcje związane z dostępem do pamięci. Potoki odpowiedzialne są za zapewnienie dostawy argumentów do potoków arytmetycznych i zachowywanie wyników ponownie w pamięci. Zazwyczaj będzie kilka arytmetycznych jednostek funkcyjnych dla operacji całkowitych/logicznych, dla dodawania zmiennopozycyjnego, mnożenia i czasem kombinacji obydwu - tak zwanych operacji złożonych. 22/69 PRiR Wykład 1 SIMD z pamięcią dzieloną Uwaga: Obecnie jednostki realizujące zadania zgodnie z metodologią SIMD obecne są także w stosowanych w domowych komputerach procesorach opartych o architekturę x86. Procesory te oferują listę rozkazów poszerzoną o zestawy rozkazów typu SIMD, takie jak: SSE od ang. "Streaming SIMD Extensions"), SSE2, SSE3, SSSE3, SSE4, SSE5, MMX, 3DNow!, AVX, AltiVec. 23/69 PRiR Wykład 1 SIMD z pamięcią rozproszoną Maszyny tego typu są czasem zwane tablicami procesorów (ang. processor-array machines). Ponieważ procesory tych maszyn pracują krokowo (ang. lock-step), czyli wszystkie procesory wykonują tę samą instrukcje w tym samym czasie (ale na innych danych), nie wymagana jest synchronizacja między procesorami. To znacznie upraszcza projektowanie takich systemów. Procesor kontrolny podaje instrukcję, która ma być wykonana przez procesory. 24/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 8

9 SIMD z pamięcią rozproszoną Wszystkie obecnie dostępne maszyny typu DM-SIMD wykorzystują kontroler komunikacji (zwany też front-end procesor, bądź FEP) oraz połączenie poprzez ścieżkę danych do procesora kontrolnego. Operacje, które nie mogą być wykonane przez tablicę procesorów, bądź przez procesor kontrolny, są przerzucane do systemu komunikacji. Dla przykładu, I/O może być wykonywane przez system komunikacji, przez maszynę z tablicą procesorów, bądź przez obie. To typowy model maszyny typu DM-SIMD, od której faktyczne modele będą odbiegać w różnym stopniu. 25/69 PRiR Wykład 1 SIMD z pamięcią rozproszoną SIMD z pamięcią rozproszoną; typowa architektura 26/69 PRiR Wykład 1 SIMD z pamięcią rozproszoną Powyższy wzorzec może sugerować, że wszystkie procesory są połączone w dwuwymiarową siatkę i faktycznie architektura połączeniowa tego typu maszyn zawsze zawiera siatkę dwuwymiarową. Przeciwległe rogi każdej siatki są także zawsze połączone w topologi torusa. Dla kilku maszyn nie jest to jedyny schemat połączeń. Mogą być także połączone w 3 wymiarach, diagonalnie, bądź w bardziej złożone struktury. 27/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 9

10 Systematyka Flynna MIMD (wymowa meem-dee) Tego typu maszyny wykonują równolegle kilka strumieni instrukcji na różnych danych. 28/69 PRiR Wykład 1 MIMD (wymowa meem-dee) Systematyka Flynna Miejscem krytycznym jest komunikacja między procesami, ponieważ jeśli dwa procesy muszą współdziałać w różnych momentach tego samego obliczenia, muszą wymieniać się danymi (wynikami) między sobą. 29/69 PRiR Wykład 1 MIMD (wymowa meem-dee) Systematyka Flynna Różnica między wieloprocesorowymi maszynami SISD, wspomnianymi wcześniej, a maszynami MIMD polega na fakcie, że instrukcje i dane są powiązane, ponieważ reprezentują różne części tego samego zadania. Systemy MIMD mogą przetwarzać równolegle wiele podzadań w celu skrócenia czasu rozwiązania dla głównego problemu. Jest duża różnorodność systemów typu MIMD, szczególnie w tej klasie systematyka Flynna okazuje się nie w pełni odpowiednia do klasyfikowania systemów. Do tej jednej klasy należą systemy, które zachowują się bardzo różnie, jak czteroprocesorowy np. NEC SX-6 i procesorowy SGI/Cray T3E. 30/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 10

11 MIMD Dlatego maszyny typu MIMD można podzielić na kilka klas: Z pamięcią dzieloną: wiele procesorów komunikuje się przez wspólną szynę dostępu do wspólnej pamięci; Z pamięcią rozproszoną: każdy procesor ma swoją własną pamięć, komunikacja odbywa się przez szybkie łącza; Klastry (od drugiej połowy lat 90-tych): dwa rozwiązania: Maszyny z pamięcią dzieloną (np. klastry firmy SUN); Maszyny z rozproszoną pamięcią (klastry internetowe bądź naukowe ); Maszyny typu ccnuma. 31/69 PRiR Wykład 1 MIMD System z pamięcią dzieloną 32/69 PRiR Wykład 1 MIMD System z pamięcią rozproszoną 33/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 11

12 2 podstawowe definicje Ziarnistość systemu opisuje stosunek czasu jaki procesor poświęca na komunikację do czasu poświęconego na obliczenia. Procesory są drobnoziarniste (ang. fine grained), jeśli spędzają więcej czasu na obliczeniach niż na komunikacji, w przeciwnym przypadku są gruboziarniste (ang. coarse grained). Skalowalność systemu opisuje, jak dodatkowe procesory wpływają na całkowitą wydajność. Skalowalność liniowa jest idealna: weź dwa razy więcej procesorów i czekaj na odpowiedź połowę czasu. 34/69 PRiR Wykład 1 MIMD z pamięcią wspólną Procesory w systemie z pamięcią dzieloną komunikują się przez czytanie i pisanie do pamięci znajdującej się we wspólnej przestrzeni adresowej, co często implikuje wspólną (dzieloną) szynę. Można także używać poprzecznych połączeń (ang. crossbar interconnections) albo wielostopniowego połączenia (ang. multistage interconnection network) 35/69 PRiR Wykład 1 MIMD z pamięcią wspólną Architektura z pamięcią dzieloną Połączenie szyną 36/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 12

13 MIMD z pamięcią wspólną Architektura z pamięcią dzieloną Poprzeczne połączenia 37/69 PRiR Wykład 1 Shared memory MIMD Architektura z pamięcią dzieloną Wielostopniowe połączenie 38/69 PRiR Wykład 1 MIMD z pamięcią wspólną Szyna dzielona jest najłatwiejszym i najczęściej stosowanym rozwiązaniem. W praktyce bardzo trudne okazało się zaprojektowanie szyny, która byłaby wystarczająco szybka, szczególnie biorąc pod uwagę, że szybkość procesorów zwiększała się szybko. Nakłada to górną granicę na liczbę procesorów, dlatego liczba takich połączeń w praktyce nie przekracza kilkudziesięciu (raczej 20 niż 90). 39/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 13

14 MIMD z pamięcią wspólną W 1992 powstał standard (IEEE P896) dla szybkich szyn łączących systemy wewnętrznie lub zewnętrznie. Szyna ta nazwana Scalable Coherent Interface SCI powinna zapewnić przepustowość między dwoma elementami rzędu 200-1,000 Mbyte/s. Jest używana przez HP/Convex SPP-2000, ale może być użyta w sieci stacji roboczych. SCI jest czymś więcej niż szybką szyną i może działać jako szkielet sieci dla rozproszonego przetwarzania. 40/69 PRiR Wykład 1 MIMD z pamięcią wspólną Problemy: Jeden proces będzie miał kontrolę nad szyną w momencie, gdy inny chce dostać się do pamięci. Ten problem jest z reguły rozwiązywany przez przydzielanie każdemu procesorowi dużego bufora na pamięć podręczną, do którego ma dostęp zamiast pamięci dzielonej. Spójność danych: z wieloma procesorami operującymi na tych samych danych może się to skończyć tak, że jedna zmienna będzie miała wiele wartości w każdej pamięci podręcznej w systemie. Jest wiele dostępnych algorytmów, zapewniających spójność danych np. bus snooping, different caching system i inne, ale to zwiększa koszt (=czas wykonania) oraz złożoność systemu. 41/69 PRiR Wykład 1 MIMD z pamięcią wspólną Systemy z pamięcią dzieloną są najłatwiejszymi komputerami równoległymi do programowania. W systemach gruboziarnistych mogą działać programy (działają) pisane dla systemów jednoprocesorowych. Systemy z pamięcią dzieloną są skalowalne dla niedużej liczby procesorów. Dla ilości większej niż 20 stosunek czas/procesorspada, ponieważ szyny stają się przepełnione. 42/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 14

15 MIMD z pamięcią wspólną Podsumowując: ZA: PRZECIW: Łatwe do programowania Dużo gotowego oprogramowania Niskie koszty Ograniczona skalowalność Problemy zgodności pamięci podręcznej Gruboziarnista równoległość 43/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną Klasa DM-MIMD jest bez wątpienia najszybciej rozwijającą się częścią rodziny komputerów wysoko wydajnościowych. Procesory w systemie z rozproszoną pamięcią wykorzystują komunikaty, aby koordynować swoje działania. Każdy procesor ma swoją pamięć i elementy łącznościowe z innymi procesorami. Procesor, jego pamięć i elementy łączące są określane mianem węzła (ang. node) systemu. Ponieważ do synchronizacji wykorzystywane są komunikaty, nazywamy te systemy systemami wymiany komunikatów (ang. message passing multiprocessors). Ponieważ każdy węzeł jest kompletnym komputerem, taki system jest nazwany systemem wielokomputerowym (ang. multicomputers). 44/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną Problem połączeń: Idealne rozwiązanie podłączyć każdy procesor w systemie do każdego innego - jest (dziś) niedostępne ze względu na trudności w budowie, koszty i skalowalność. 45/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 15

16 MIMD z pamięcią rozproszoną Różne strategie: pierścienie hipersześciany (ang. hypercube) drzewa binarne i grube (ang. fat) drzewa dwuwymiarowe tablice procesorów 46/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną 47/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną Hipersześciany Dobrą właściwością topologii opartej na hipersześcianie jest to, że przy 2 d węzłach liczba krawędzi, jakie trzeba pokonać pomiędzy każdymi dwoma wierzchołkami wynosi maksymalnie d. Tak więc wymiar sieci rośnie tylko logarytmicznie wraz ze wzrostem liczby wierzchołków. Dodatkowo, możliwe jest symulowanie każdej innej topologii na hipersześcianie: drzew, pierścieni, 2 i 3 wymiarowych siatek, i innych. 48/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 16

17 MIMD z pamięcią rozproszoną Hipersześciany W praktyce dokładna topologia hipersześcianu nie ma większego znaczenia, ponieważ wszystkie systemy na rynku implementują "wormhole routing". To oznacza, że jeśli wiadomość jest wysyłana z węzła i do węzła j, przesyłany jest nagłówek, co powoduje bezpośrednie połączenie pomiędzy tymi węzłami. Jak tylko połączenie zostanie nawiązane, właściwe dane są przesyłane bez zakłócenia operacji na pośrednich węzłach. Poza małą ilością czasu potrzebnego na nawiązanie połączenia pomiędzy wierzchołkami, czas połączenia stał się na dobrą sprawę niezależny od faktycznej odległości (->OneLab). 49/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną Hipersześciany Jeśli w obciążonej sieci kilka wiadomości ma przebyć tę samą drogę, czasy oczekiwania są wyliczone jak w każdej sieci, która bezpośrednio nie łączy każdego procesora z każdym. Często stosowane są strategie wielokrotnego przełączania, aby ominąć obciążone połączenia. 50/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną Grube drzewo 51/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 17

18 MIMD z pamięcią rozproszoną Grube drzewa Wydajny pod względem kosztów sposób, aby połączyć dużą liczbę procesorów, to właśnie grube drzewo (ang. fat tree). W zasadzie zwykłe drzewo wystarczy, żeby połączyć wszystkie węzły w systemie. Jednak w praktyce okazuje się, że w pobliżu korzenia drzewa występuje przeciążenie systemu z powodu dużej koncentracji wiadomości, które najpierw muszą dostać się na wysoki poziom zanim mogą ponownie zejść niżej do docelowych węzłów. Grube drzewo częściowo rekompensuje to zjawisko przez zapewnienie większej przepustowości (najczęściej w formie wielokrotnych połączeń) w wyższych partiach drzewa. N- wymiarowe grube drzewo to drzewo, gdzie poziomy w kierunku korzenia są N krotnie liczniejsze niż ich liczba na niższym poziomie. 52/69 PRiR Wykład 1 MIMD z pamięcią rozproszoną Dwuwymiarowe tablice procesorów(każdy procesor jest połączony ze swoimi sąsiadami). Sporo dużych równoległych systemów DM-MIMD zbudowano w oparciu o 2 i 3 wymiarowe siatki (ang. mesh), ewentualnie struktury walcowe. Powodem tego może być to, że większość dużych symulacji może być wydajnie mapowana na tej topologii, i że większa ilość połączeń prawie się nie opłaca. Jednak niektóre systemy utrzymują dodatkowe połączenia poza siatką w celu uniknięcia wąskich gardeł w przesyłaniu i wyszukiwaniu danych. 53/69 PRiR Wykład 1 Podsumowanie MIMD z pamięcią rozproszoną ZA: Niemal liniowa skalowalność Drobnoziarnista równoległość PRZECIW: Trudne do programowania Mało dostępnych programów Kosztowne 54/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 18

19 Klastry Rozwój klastrów, zbioru stacji roboczych/komputerów PC połączonych przez sieć lokalną, szybko wzrósł od momentu zaprezentowania pierwszego klastra Beowulf-a w 1994 r. Atrakcyjność tego rozwiązania leży w potencjalnie niskich kosztach zarówno sprzętu i oprogramowania jak i kontroli, jaką budowniczowie i użytkownicy mają nad systemem. Zainteresowanie klastrami można dostrzec nawet ze strony IEEE w postaci działania Task Force on Cluster Computing (TFCC), który regularnie wydaje White Paper. Opisywany w nim jest obecny status obliczeń prowadzonych na klastrach. Także książki jak zbudować i utrzymać klastry zwiększyły ich popularność. 55/69 PRiR Wykład 1 Klastry Wraz z tym, jak środowisko klastrów stawało się dojrzalsze i atrakcyjniejsze finansowo, zarówno duże, jak i małe firmy wkroczyły na to pole i oferują mniej lub bardziej gotowe do działania klastry dla tych, którzy nie chcą budować swojego systemu od podstaw. Liczba firm sprzedających konfiguracje oparte na klastrach stała się dość duża. 56/69 PRiR Wykład 1 Klastry Dodatkowo jest duża różnica w użytkowaniu klastrów i ich bardziej zintegrowanych odpowiedników, które będą omówione w następujących sekcjach: klastry są najczęściej używane do capability computing, podczas gdy zintegrowane maszyny są używane do capacity computing. 57/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 19

20 Klastry Pierwszy tryb użytkowania - capability computing - oznacza, że system jest używany do jednego bądź kilku programów, dla których nie ma żadnej dostępnej alternatywy pod względem możliwości obliczeniowych. Drugie podejście -capacity computing - polega na utrzymywaniu dużego obciążenia przez pracę wielu, często wymagających, programów i użytkowników. 58/69 PRiR Wykład 1 Klastry Tradycyjnie dostawcy dużych superkomputerów nauczyli się dostarczać oprogramowanie do tego ostatniego trybu pracy, ponieważ cenne zasoby ich systemów musiały być jak najwydajniejsze. Dla kontrastu klastry takie jak klaster Beowulf (Mossix i inne) są głównie zarządzane przez systemy na bazie Linuxa, które albo nie posiadają odpowiednich narzędzi, albo są one słabo rozwinięte. Jednakże wraz ze wzrostem popularności i stabilności klastrów kształtuje się trend do używania ich do capability computing. 59/69 PRiR Wykład 1 Klastry Ważnym, ale nie zadziwiającym wnioskiem jest, że prędkość łącza jest bardzo ważna we wszystkim, poza aplikacjami najbardziej złożonymi obliczeniowo. Kolejną ważną obserwacją jest, że węzły obliczeniowe z więcej niż jednym procesorem mogą być atrakcyjne z punktu widzenia oszczędności (prawdopodobnie także energii) i kwestii odprowadzania ciepła, ale wydajność może zostać poważnie obniżona przez fakt, że więcej procesorów musi pracować na pamięci poszczególnego węzła. Przepustowość węzłów w tym wypadku nie wystarcza dla wymagań aplikacji wymagających dużej ilości pamięci. 60/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 20

21 Klastry Na szczęście jest dziś duży wybór sieci komunikacyjnych dostępnych w klastrach. Oczywiście 100 Mb/s Ethernet jest zawsze wykonalny, co jest atrakcyjne ze względów ekonomicznych, ale ma minusy w postaci ograniczenia maksymalnej przepustowości (około 10 MB/s) i dużego opóźnienia (ang. latency) (około100 µs). Gigabitowy Ethernet ma maksymalną przepustowość 10 razy większą, ale ma takie samo opóźnienie. 61/69 PRiR Wykład 1 Maszyny ccnuma W dzisiejszych czasach można zaobserwować trend, aby budować systemy, które mają raczej małą (do 16) liczbę procesorów RISC ściśle zintegrowanych w klasterze w tzw. węzeł SMP - Symmetric Multi- Processing. Procesory w takim węźle są praktycznie zawsze połączone bezpośrednio szyną, podczas gdy klastry połączone są mniej kosztowną siecią. 62/69 PRiR Wykład 1 Maszyny ccnuma Diagram blokowy systemu z hybrydową siecią: klastry 4 CPU są połączone szyną. Zewnętrznie klastry połączone są mniej kosztowną siecią. 63/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 21

22 Maszyny ccnuma Jest to postępowanie podobne do tego przy dużych grupach procesorów wektorowych wspomnianych wcześniej, ale istotną różnicą jest to, że każdy procesor, jeśli zajdzie taka potrzeba, ma dostęp do całej przestrzeni adresowej. Najważniejszymi sposobami pozwalającymi węzłom SMP dzielić ich pamięć jest S-COMA (Simple Cache-Only Memory Architecture - Prosta Architektura Pamięci Podręcznej) i ccnuma (Cache Coherent Non-Uniform Memory Access Niejednorodna Dostępność do Spójnej Pamięci Podręcznej). Dlatego takie systemy mogą być uznawane za maszyny SM-MIMD. Z drugiej strony, ponieważ pamięć jest fizycznie rozproszona, nie może być zagwarantowane, że operacja dostępu do danych będzie obciążona tym samym czasem. 64/69 PRiR Wykład 1 Maszyny ccnuma W systemach S-COMA hierarchiczność pamięci podręcznej lokalnych węzłów jest rozszerzona na pamięć innych węzłów. Gdy potrzebne są dane nie znajdujące się w lokalnej pamięci węzła, są one tam dostarczane z węzła, w którym się fizycznie znajdowały. W ccnuma ten pomysł jest dalej rozszerzany i cała pamięć w systemie jest adresowana globalnie. Tak więc dane mogą nie być fizycznie lokalne, ale logicznie należą do jednej przestrzeni adresowej. Ponieważ dane mogą być fizycznie rozproszone na wiele węzłów, czas dostępu do różnych danych może być różny - co wyjaśnia termin niejednorodna dostępność do pamięci (nonuniform). 65/69 PRiR Wykład 1 Maszyny ccnuma Termin spójna pamięć podręczna (ang. Cache Coherent ) odnosi się do faktu, że dla wszystkich procesorów jedna zmienna musi mieć jedną, ustaloną wartość. Dlatego musi zostać zapewnione, że pamięć podręczna, która zapewniła te dane, jest pod tym względem zgodna. Jest wiele sposobów na zapewnienie spójności pamięci podręcznej procesorów. Jeden to snoopy bus protocol, w którym pamięci nasłuchują transportu zmiennych do innych procesorów i uaktualniają swoje kopie tych zmiennych, jeśli je posiadają. Inny sposób to pamięć słownikowa (ang. directory memory), specjalny obszar pamięci, który pozwala śledzić wszystkie kopie zmiennych i ich aktualność. 66/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 22

23 Maszyny ccnuma W chwili obecnej żadna komercyjna maszyna nie używa schematu S-COMA. Jest kilka popularnych maszyn ccnuma (HP SuperDome, SGI Origin3000 i Altix3000) dostępnych na rynku. Dla wszystkich praktycznych zastosowań możemy zaklasyfikować te systemy jako maszyny SM-MIMD także dlatego, że specjalny sprzęt/oprogramowanie (jak pamięć słownikowa) zostało dodane, aby osiągnąć spójny obraz systemu pomimo jego fizycznego rozproszenia. 67/69 PRiR Wykład 1 Podsumowanie Niektóre maszyny są oczywiście hybrydami kategorii, jednak ten klasyczny model (Flynna) przetrwał ponieważ jest prosty, łatwy do zrozumienia i daje dobry pierwszy ogląd zagadnienia. Jest również prawdopodobnie dzięki swojej zrozumiałości najbardziej powszechnym schematem * * David A. Patterson and John L. Hennessy. Computer Organization and Design (Second Edition) Morgan Kaufmann Publishers, 1998, pp /69 PRiR Wykład 1 Podsumowanie Równoległe przetwarzanie jest ciągle wyzwaniem dla naukowców. Nie możemy jeszcze oczekiwać bardzo dobrych kompilatorów do równoległego przetwarzania, ale: budowa narzędzi (takich jak kompilatory, biblioteki i systemy) pomagających w przetwarzaniu równoległym jest intensywnie rozwijającą się dziedziną 69/69 PRiR Wykład 1 Przygotował: Lucjan Stapp 23

16. Taksonomia Flynn'a.

16. Taksonomia Flynn'a. 16. Taksonomia Flynn'a. Taksonomia systemów komputerowych według Flynna jest klasyfikacją architektur komputerowych, zaproponowaną w latach sześćdziesiątych XX wieku przez Michaela Flynna, opierająca się

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 13 Jan Kazimirski 1 KOMPUTERY RÓWNOLEGŁE 2 Klasyfikacja systemów komputerowych SISD Single Instruction, Single Data stream SIMD Single Instruction, Multiple Data stream MISD

Bardziej szczegółowo

Podstawy Techniki Mikroprocesorowej wykład 13: MIMD. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej

Podstawy Techniki Mikroprocesorowej wykład 13: MIMD. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej Podstawy Techniki Mikroprocesorowej wykład 13: MIMD Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej e-mail: Jacek.Mazurkiewicz@pwr.edu.pl Kompjuter eta jest i klasyfikacja jednostka centralna

Bardziej szczegółowo

Algorytmy i Struktury Danych

Algorytmy i Struktury Danych POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI i TECHNIK INFORMACYJNYCH Algorytmy i Struktury Danych www.pk.edu.pl/~zk/aisd_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 12: Wstęp

Bardziej szczegółowo

Architektura mikroprocesorów TEO 2009/2010

Architektura mikroprocesorów TEO 2009/2010 Architektura mikroprocesorów TEO 2009/2010 Plan wykładów Wykład 1: - Wstęp. Klasyfikacje mikroprocesorów Wykład 2: - Mikrokontrolery 8-bit: AVR, PIC Wykład 3: - Mikrokontrolery 8-bit: 8051, ST7 Wykład

Bardziej szczegółowo

Przetwarzanie równoległesprzęt. Rafał Walkowiak Wybór

Przetwarzanie równoległesprzęt. Rafał Walkowiak Wybór 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

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 14 Procesory równoległe Klasyfikacja systemów wieloprocesorowych Luźno powiązane systemy wieloprocesorowe Każdy procesor ma własną pamięć główną i kanały wejścia-wyjścia.

Bardziej szczegółowo

Podstawy Informatyki Systemy sterowane przepływem argumentów

Podstawy Informatyki Systemy sterowane przepływem argumentów Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Komputer i jego architektura Taksonomia Flynna 2 Komputer i jego architektura Taksonomia Flynna Komputer Komputer

Bardziej szczegółowo

Nowoczesne technologie przetwarzania informacji

Nowoczesne technologie przetwarzania informacji Projekt Nowe metody nauczania w matematyce Nr POKL.09.04.00-14-133/11 Nowoczesne technologie przetwarzania informacji Mgr Maciej Cytowski (ICM UW) Lekcja 2: Podstawowe mechanizmy programowania równoległego

Bardziej szczegółowo

Klasyfikacja systemów komputerowych. Architektura von Neumanna Architektura harwardzka Zmodyfikowana architektura harwardzka. dr inż.

Klasyfikacja systemów komputerowych. Architektura von Neumanna Architektura harwardzka Zmodyfikowana architektura harwardzka. dr inż. Rok akademicki 2011/2012, Wykład nr 6 2/46 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2011/2012

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2011/2012 Wykład nr 6 (27.04.2012) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

3.Przeglądarchitektur

3.Przeglądarchitektur Materiały do wykładu 3.Przeglądarchitektur Marcin Peczarski Instytut Informatyki Uniwersytet Warszawski 24 stycznia 2009 Architektura a organizacja komputera 3.1 Architektura komputera: atrybuty widzialne

Bardziej szczegółowo

Systemy wieloprocesorowe i wielokomputerowe

Systemy wieloprocesorowe i wielokomputerowe Systemy wieloprocesorowe i wielokomputerowe Taksonomia Flynna Uwzględnia następujące czynniki: Liczbę strumieni instrukcji Liczbę strumieni danych Klasyfikacja bierze się pod uwagę: Jednostkę przetwarzającą

Bardziej szczegółowo

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, zapoczątkowana przez i wstecznie zgodna z 16-bitowym procesorem

Bardziej szczegółowo

Dr inż. hab. Siergiej Fialko, IF-PK,

Dr inż. hab. Siergiej Fialko, IF-PK, Dr inż. hab. Siergiej Fialko, IF-PK, http://torus.uck.pk.edu.pl/~fialko sfialko@riad.pk.edu.pl 1 Osobliwości przedmiotu W podanym kursie główna uwaga będzie przydzielona osobliwościom symulacji komputerowych

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna

Bardziej szczegółowo

Wykład 8 Systemy komputerowe ze współdzieloną pamięcią operacyjną, struktury i cechy funkcjonalne.

Wykład 8 Systemy komputerowe ze współdzieloną pamięcią operacyjną, struktury i cechy funkcjonalne. Wykład 8 Systemy komputerowe ze współdzieloną pamięcią operacyjną, struktury i cechy funkcjonalne. Części wykładu: 1. Ogólny podział struktur systemów równoległych 2. Rodzaje systemów komputerowych z pamięcią

Bardziej szczegółowo

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową

Bardziej szczegółowo

1. ARCHITEKTURY SYSTEMÓW KOMPUTEROWYCH

1. ARCHITEKTURY SYSTEMÓW KOMPUTEROWYCH 1. ARCHITEKTURY SYSTEMÓW KOMPUTEROWYCH 1 Klasyfikacje komputerów Podstawowe architektury używanych obecnie systemów komputerowych można podzielić: 1. Komputery z jednym procesorem 2. Komputery równoległe

Bardziej szczegółowo

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz Obliczenia równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 15 czerwca 2001 Spis treści Przedmowa............................................

Bardziej szczegółowo

Klasyfikacje systemów komputerowych, modele złożoności algorytmów obliczeniowych

Klasyfikacje systemów komputerowych, modele złożoności algorytmów obliczeniowych Wykład 5 Klasyfikacje systemów komputerowych, modele złożoności algorytmów obliczeniowych Spis treści: 1. Klasyfikacja Flynna 2. Klasyfikacja Skillicorna 3. Klasyfikacja architektury systemów pod względem

Bardziej szczegółowo

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................

Bardziej szczegółowo

3.Przeglądarchitektur

3.Przeglądarchitektur Materiały do wykładu 3.Przeglądarchitektur Marcin Peczarski Instytut Informatyki Uniwersytet Warszawski 17 marca 2014 Architektura a organizacja komputera 3.1 Architektura komputera: atrybuty widzialne

Bardziej szczegółowo

PODSTAWY PRZETWARZANIA RÓWNOLEGŁEGO INFORMACJI

PODSTAWY PRZETWARZANIA RÓWNOLEGŁEGO INFORMACJI ZESZYTY NAUKOWE 105-114 Dariusz CHAŁADYNIAK 1 PODSTAWY PRZETWARZANIA RÓWNOLEGŁEGO INFORMACJI Streszczenie W artykule poruszono wybrane podstawowe zagadnienia związane z przetwarzaniem równoległym. Przedstawiono

Bardziej szczegółowo

Architektura Komputerów

Architektura Komputerów 1/3 Architektura Komputerów dr inż. Robert Jacek Tomczak Uniwersytet Przyrodniczy w Poznaniu Architektura a organizacja komputera 3.1 Architektura komputera: atrybuty widzialne dla programisty, atrybuty

Bardziej szczegółowo

Algorytmy dla maszyny PRAM

Algorytmy dla maszyny PRAM Instytut Informatyki 21 listopada 2015 PRAM Podstawowym modelem służącym do badań algorytmów równoległych jest maszyna typu PRAM. Jej głównymi składnikami są globalna pamięć oraz zbiór procesorów. Do rozważań

Bardziej szczegółowo

Architektura von Neumanna

Architektura von Neumanna Architektura von Neumanna Klasyfikacja systemów komputerowych (Flynna) SISD - Single Instruction Single Data SIMD - Single Instruction Multiple Data MISD - Multiple Instruction Single Data MIMD - Multiple

Bardziej szczegółowo

Komputery równoległe. Zbigniew Koza. Wrocław, 2012

Komputery równoległe. Zbigniew Koza. Wrocław, 2012 Komputery równoległe Zbigniew Koza Wrocław, 2012 Po co komputery równoległe? Przyspieszanie obliczeń np. diagnostyka medyczna; aplikacje czasu rzeczywistego Przetwarzanie większej liczby danych Przykład:

Bardziej szczegółowo

Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system.

Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system. Wstęp Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system. Przedstawienie architektur sprzętu wykorzystywanych do

Bardziej szczegółowo

Analiza ilościowa w przetwarzaniu równoległym

Analiza ilościowa w przetwarzaniu równoległym Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 Analiza ilościowa w przetwarzaniu równoległym 10. Analiza ilościowa w przetwarzaniu równoległym...2 10.1 Kryteria efektywności przetwarzania równoległego...2

Bardziej szczegółowo

21 Model z pamięcią współdzieloną (model PRAM) - Parallel Random Access Machine

21 Model z pamięcią współdzieloną (model PRAM) - Parallel Random Access Machine 21 Model z pamięcią współdzieloną (model PRAM) - Parallel Random Access Machine Model PRAM zapewnia możliwość jednoczesnego dostępu każdego spośród n procesorów o architekturze RAM do wspólnej pamięci

Bardziej szczegółowo

Architektury komputerów Architektury i wydajność. Tomasz Dziubich

Architektury komputerów Architektury i wydajność. Tomasz Dziubich Architektury komputerów Architektury i wydajność Tomasz Dziubich Przetwarzanie potokowe Przetwarzanie sekwencyjne Przetwarzanie potokowe Architektura superpotokowa W przetwarzaniu potokowym podczas niektórych

Bardziej szczegółowo

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1 i sieci komputerowe Szymon Wilk Superkomputery 1 1. Superkomputery to komputery o bardzo dużej mocy obliczeniowej. Przeznaczone są do symulacji zjawisk fizycznych prowadzonych głównie w instytucjach badawczych:

Bardziej szczegółowo

10/14/2013 Przetwarzanie równoległe - wstęp 1. Zakres przedmiotu

10/14/2013 Przetwarzanie równoległe - wstęp 1. Zakres przedmiotu Literatura 1. Introduction to Parallel Computing; Grama, Gupta, Karypis, Kumar; Addison Wesley 2003 2. Wprowadzenie do obliczeń równoległych, Zbigniew Czech, Wydawnictwo Naukowe PWN, 2010. 3. Designing

Bardziej szczegółowo

Wprowadzenie do architektury komputerów. Taksonomie architektur Podstawowe typy architektur komputerowych

Wprowadzenie do architektury komputerów. Taksonomie architektur Podstawowe typy architektur komputerowych Wprowadzenie do architektury komputerów Taksonomie architektur Podstawowe typy architektur komputerowych Taksonomie Służą do klasyfikacji architektur komputerowych podział na kategorie określenie własności

Bardziej szczegółowo

Literatura. 11/16/2016 Przetwarzanie równoległe - wstęp 1

Literatura. 11/16/2016 Przetwarzanie równoległe - wstęp 1 Literatura 1. Wprowadzenie do obliczeń równoległych, Zbigniew Czech, Wydawnictwo Naukowe PWN, 2010, 2013 2. Introduction to Parallel Computing; Grama, Gupta, Karypis, Kumar; Addison Wesley 2003 3. Designing

Bardziej szczegółowo

Numeryczna algebra liniowa

Numeryczna algebra liniowa Numeryczna algebra liniowa Numeryczna algebra liniowa obejmuje szereg algorytmów dotyczących wektorów i macierzy, takich jak podstawowe operacje na wektorach i macierzach, a także rozwiązywanie układów

Bardziej szczegółowo

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu. Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową..

Bardziej szczegółowo

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK 1 PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK POLITECHNIKA CZĘSTOCHOWSKA 2 Część teoretyczna Informacje i wstępne wymagania Cel przedmiotu i zakres materiału Zasady wydajnego

Bardziej szczegółowo

Wykład 2 Podstawowe pojęcia systemów równoległych, modele równoległości, wydajność obliczeniowa, prawo Amdahla/Gustafsona

Wykład 2 Podstawowe pojęcia systemów równoległych, modele równoległości, wydajność obliczeniowa, prawo Amdahla/Gustafsona Wykład 2 Podstawowe pojęcia systemów równoległych, modele równoległości, wydajność obliczeniowa, prawo Amdahla/Gustafsona Spis treści: 1. Równoległe systemy komputerowe a rozproszone systemy komputerowe,

Bardziej szczegółowo

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK 1 PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK POLITECHNIKA CZĘSTOCHOWSKA 2 Trendy rozwoju współczesnych procesorów Budowa procesora CPU na przykładzie Intel Kaby Lake

Bardziej szczegółowo

SSE (Streaming SIMD Extensions)

SSE (Streaming SIMD Extensions) SSE (Streaming SIMD Extensions) Zestaw instrukcji wprowadzony w 1999 roku po raz pierwszy w procesorach Pentium III. SSE daje przede wszystkim możliwość wykonywania działań zmiennoprzecinkowych na 4-elementowych

Bardziej szczegółowo

Obliczenia Wysokiej Wydajności

Obliczenia Wysokiej Wydajności Obliczenia wysokiej wydajności 1 Wydajność obliczeń Wydajność jest (obok poprawności, niezawodności, bezpieczeństwa, ergonomiczności i łatwości stosowania i pielęgnacji) jedną z najważniejszych charakterystyk

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 6 (28.03.2011) Rok akademicki 2010/2011, Wykład

Bardziej szczegółowo

Budowa komputera Komputer computer computare

Budowa komputera Komputer computer computare 11. Budowa komputera Komputer (z ang. computer od łac. computare obliczać) urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału

Bardziej szczegółowo

Przetwarzanie równoległesprzęt

Przetwarzanie równoległesprzęt Przetwarzanie równoległesprzęt 2 Rafał Walkowiak Wybór 4.0.204 7.0.2 Sieci połączeń komputerów równoległych () Zadanie: przesyłanie danych pomiędzy węzłami przetwarzającymi Parametry: liczba wejść, wyjść,

Bardziej szczegółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 007 Tryb rzeczywisty i chroniony procesora 2 SO i SK/WIN Wszystkie 32-bitowe procesory (386 i nowsze) mogą pracować w kilku trybach. Tryby pracy

Bardziej szczegółowo

Klasyfikacja systemów komputerowych. Architektura von Neumanna. dr inż. Jarosław Forenc

Klasyfikacja systemów komputerowych. Architektura von Neumanna. dr inż. Jarosław Forenc Rok akademicki 2010/2011, Wykład nr 6 2/56 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2010/2011

Bardziej szczegółowo

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy Systemy operacyjne Systemy operacyjne Dr inż. Ignacy Pardyka Literatura Siberschatz A. i inn. Podstawy systemów operacyjnych, WNT, Warszawa Skorupski A. Podstawy budowy i działania komputerów, WKiŁ, Warszawa

Bardziej szczegółowo

5. Model komunikujących się procesów, komunikaty

5. Model komunikujących się procesów, komunikaty Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć

Bardziej szczegółowo

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności. Procesory wielordzeniowe (multiprocessor on a chip) 1 Procesory wielordzeniowe 2 Procesory wielordzeniowe 3 Konsekwencje prawa Moore'a 4 Procesory wielordzeniowe 5 Intel Nehalem 6 Architektura Intel Nehalem

Bardziej szczegółowo

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności. Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Organizacja pamięci Organizacja pamięci współczesnych systemów komputerowych

Bardziej szczegółowo

Standard transmisji równoległej LPT Centronics

Standard transmisji równoległej LPT Centronics Standard transmisji równoległej LPT Centronics Rodzaje transmisji szeregowa równoległa Opis LPT łącze LPT jest interfejsem równoległym w komputerach PC. Standard IEEE 1284 został opracowany w 1994 roku

Bardziej szczegółowo

Budowa Mikrokomputera

Budowa Mikrokomputera Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 12 Jan Kazimirski 1 Magistrale systemowe 2 Magistrale Magistrala medium łączące dwa lub więcej urządzeń Sygnał przesyłany magistralą może być odbierany przez wiele urządzeń

Bardziej szczegółowo

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność obliczeń równoległych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Skalowalność Przy rozważaniu wydajności przetwarzania (obliczeń, komunikacji itp.) często pojawia się pojęcie skalowalności

Bardziej szczegółowo

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Metodologia programowania równoległego Przykłady podziałów zadania na podzadania: Podział ze względu na funkcje (functional

Bardziej szczegółowo

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Akademia Techniczno-Humanistyczna w Bielsku-Białej Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 9 Temat ćwiczenia: Aplikacje klient-serwer. 1. Wstęp teoretyczny.

Bardziej szczegółowo

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego. Plan wykładu Pojęcie magistrali i jej struktura Architektura pamięciowo-centryczna Architektura szynowa Architektury wieloszynowe Współczesne architektury z połączeniami punkt-punkt Magistrala Magistrala

Bardziej szczegółowo

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola Ogólny schemat komputera Jak widać wszystkie bloki (CPU, RAM oraz I/O) dołączone są do wspólnych

Bardziej szczegółowo

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2018/2019 Wykład nr 10 (17.05.2019) Rok akademicki 2018/2019, Wykład

Bardziej szczegółowo

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz

Bardziej szczegółowo

Procesory. Schemat budowy procesora

Procesory. Schemat budowy procesora Procesory Procesor jednostka centralna (CPU Central Processing Unit) to sekwencyjne urządzenie cyfrowe którego zadaniem jest wykonywanie rozkazów i sterowanie pracą wszystkich pozostałych bloków systemu

Bardziej szczegółowo

Projektowanie. Projektowanie mikroprocesorów

Projektowanie. Projektowanie mikroprocesorów WYKŁAD Projektowanie mikroprocesorów Projektowanie układ adów w cyfrowych - podsumowanie Algebra Boole a Bramki logiczne i przerzutniki Automat skończony System binarny i reprezentacja danych Synteza logiczna

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 6 (06.05.2011) Rok akademicki 2010/2011, Wykład

Bardziej szczegółowo

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012 Projektowanie algorytmów równoległych Zbigniew Koza Wrocław 2012 Spis reści Zadniowo-kanałowy (task-channel) model algorytmów równoległych Projektowanie algorytmów równoległych metodą PACM Task-channel

Bardziej szczegółowo

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Opiekun naukowy: dr

Bardziej szczegółowo

Wprowadzenie. Klastry komputerowe. Superkomputery. informatyka +

Wprowadzenie. Klastry komputerowe. Superkomputery. informatyka + Wprowadzenie Klastry komputerowe Superkomputery Wprowadzenie Klastry komputerowe Superkomputery Wprowadzenie Filozofia przetwarzania równoległego polega na podziale programu na fragmenty, z których każdy

Bardziej szczegółowo

Wykorzystanie architektury Intel MIC w obliczeniach typu stencil

Wykorzystanie architektury Intel MIC w obliczeniach typu stencil Wykorzystanie architektury Intel MIC w obliczeniach typu stencil Kamil Halbiniak Wydział Inżynierii Mechanicznej i Informatyki Kierunek informatyka, Rok IV Instytut Informatyki Teoretycznej i Stosowanej

Bardziej szczegółowo

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2013/14 Znajdowanie maksimum w zbiorze

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2009/2010 Wykład nr 6 (15.05.2010) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

Budowa systemów komputerowych

Budowa systemów komputerowych Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa

Bardziej szczegółowo

Przetwarzanie Rozproszone i Równoległe

Przetwarzanie Rozproszone i Równoległe WYDZIAŁ INŻYNIERII ELEKTRYCZNEJ I KOMPUTEROWEJ KATEDRA AUTOMATYKI I TECHNIK INFORMACYJNYCH Przetwarzanie Rozproszone i Równoległe www.pk.edu.pl/~zk/prir_hp.html Wykładowca: dr inż. Zbigniew Kokosiński

Bardziej szczegółowo

Rozproszona pamiêæ dzielona - 1

Rozproszona pamiêæ dzielona - 1 Rozproszona pamiêæ dzielona - 1 Wieloprocesor - wiele ma dostêp do wspólnej pamiêci g³ównej Wielokomputer - ka dy ma w³asn¹ pamiêæ g³ówn¹; nie ma wspó³dzielenia pamiêci Aspekt sprzêtowy: Skonstruowanie

Bardziej szczegółowo

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2014/15 Znajdowanie maksimum w zbiorze

Bardziej szczegółowo

Metody optymalizacji soft-procesorów NIOS

Metody optymalizacji soft-procesorów NIOS POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Warszawa, 27.01.2011

Bardziej szczegółowo

Programowanie współbieżne Wykład 2. Iwona Kochańska

Programowanie współbieżne Wykład 2. Iwona Kochańska Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas

Bardziej szczegółowo

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015 Źródła kosztów przetwarzania współbieżnego interakcje między procesami

Bardziej szczegółowo

Programowanie współbieżne i rozproszone

Programowanie współbieżne i rozproszone Programowanie współbieżne i rozproszone WYKŁAD 1 dr inż. Literatura ogólna Ben-Ari, M.: Podstawy programowania współbieżnego i rozproszonego. Wydawnictwa Naukowo-Techniczne, Warszawa, 2009. Czech, Z.J:

Bardziej szczegółowo

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz

Bardziej szczegółowo

System mikroprocesorowy i peryferia. Dariusz Chaberski

System mikroprocesorowy i peryferia. Dariusz Chaberski System mikroprocesorowy i peryferia Dariusz Chaberski System mikroprocesorowy mikroprocesor pamięć kontroler przerwań układy wejścia wyjścia kontroler DMA 2 Pamięć rodzaje (podział ze względu na sposób

Bardziej szczegółowo

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Akademickie Centrum Informatyki PS. Wydział Informatyki PS kademickie Centrum Informatyki PS Wydział Informatyki PS Wydział Informatyki Sieci komputerowe i Telekomunikacyjne Transmisja w protokole IP Krzysztof ogusławski tel. 4 333 950 kbogu@man.szczecin.pl 1.

Bardziej szczegółowo

Wydajność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Wydajność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność obliczeń równoległych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność obliczeń równoległych Podobnie jak w obliczeniach sekwencyjnych, gdzie celem optymalizacji wydajności było maksymalne

Bardziej szczegółowo

Obliczenia Wysokiej Wydajności

Obliczenia Wysokiej Wydajności Obliczenia wysokiej wydajności 1 Wydajność obliczeń Wydajność jest (obok poprawności, niezawodności, bezpieczeństwa, ergonomiczności oraz łatwości stosowania i pielęgnacji) jedną z najważniejszych charakterystyk

Bardziej szczegółowo

Systemy rozproszone System rozproszony

Systemy rozproszone System rozproszony Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową.

Bardziej szczegółowo

współbieżność - zdolność do przetwarzania wielu zadań jednocześnie

współbieżność - zdolność do przetwarzania wielu zadań jednocześnie Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową.

Bardziej szczegółowo

Wydajność komunikacji grupowej w obliczeniach równoległych. Krzysztof Banaś Obliczenia wysokiej wydajności 1

Wydajność komunikacji grupowej w obliczeniach równoległych. Krzysztof Banaś Obliczenia wysokiej wydajności 1 Wydajność komunikacji grupowej w obliczeniach równoległych Krzysztof Banaś Obliczenia wysokiej wydajności 1 Sieci połączeń Topologie sieci statycznych: Sieć w pełni połączona Gwiazda Kraty: 1D, 2D, 3D

Bardziej szczegółowo

155,35 PLN brutto 126,30 PLN netto

155,35 PLN brutto 126,30 PLN netto Totolink A3000RU Router WiFi AC1200, Dual Band, MU-MIMO, 5x RJ45 1000Mb/s, 1x USB 155,35 PLN brutto 126,30 PLN netto Producent: TOTOLINK Router bezprzewodowy A3000RU jest zgodny z najnowszym standardem

Bardziej szczegółowo

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na , gniazda kart rozszerzeń, w istotnym stopniu wpływają na wydajność systemu komputerowego, m.in. ze względu na fakt, że układy zewnętrzne montowane na tych kartach (zwłaszcza kontrolery dysków twardych,

Bardziej szczegółowo

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010 Algorytmy równoległe Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka Znajdowanie maksimum w zbiorze n liczb węzły - maksimum liczb głębokość = 3 praca = 4++ = 7 (operacji) n - liczność

Bardziej szczegółowo

Równoległość i współbieżność

Równoległość i współbieżność Równoległość i współbieżność Wykonanie sekwencyjne. Poszczególne akcje procesu są wykonywane jedna po drugiej. Dokładniej: kolejna akcja rozpoczyna się po całkowitym zakończeniu poprzedniej. Praca współbieżna

Bardziej szczegółowo

Równoległość i współbieżność

Równoległość i współbieżność Równoległość i współbieżność Wykonanie sekwencyjne. Poszczególne akcje procesu są wykonywane jedna po drugiej. Dokładniej: kolejna akcja rozpoczyna się po całkowitym zakończeniu poprzedniej. Praca współbieżna

Bardziej szczegółowo

Bibliografia: pl.wikipedia.org www.intel.com. Historia i rodzaje procesorów w firmy Intel

Bibliografia: pl.wikipedia.org www.intel.com. Historia i rodzaje procesorów w firmy Intel Bibliografia: pl.wikipedia.org www.intel.com Historia i rodzaje procesorów w firmy Intel Specyfikacja Lista mikroprocesorów produkowanych przez firmę Intel 4-bitowe 4004 4040 8-bitowe x86 IA-64 8008 8080

Bardziej szczegółowo

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386 Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać

Bardziej szczegółowo

Programowanie Rozproszone i Równoległe

Programowanie Rozproszone i Równoległe Programowanie Rozproszone i Równoległe OpenMP (www.openmp.org) API do pisania wielowątkowych aplikacji Zestaw dyrektyw kompilatora oraz procedur bibliotecznych dla programistów Ułatwia pisanie programów

Bardziej szczegółowo

Wstęp do programowania 2

Wstęp do programowania 2 Wstęp do programowania 2 wykład 10 Zadania Agata Półrola Wydział Matematyki UŁ 2005/2006 http://www.math.uni.lodz.pl/~polrola Współbieżność dotychczasowe programy wykonywały akcje sekwencyjnie Ada umożliwia

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część IV - Model PRAM

Algorytmy Równoległe i Rozproszone Część IV - Model PRAM Algorytmy Równoległe i Rozproszone Część IV - Model PRAM Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/ kuszner/arir/ 2005/06

Bardziej szczegółowo