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

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

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

Transkrypt

1 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, metody zrównoleglenia obliczeń. 2. Systemy wieloprocesorowe ze wspólną i rozproszoną pamięcią. 3. Miary wydajności obliczeniowej systemów równoległych i rozproszonych. 4. Prawo Amdahla/Gustafsona

2 1. Równoległe systemy komputerowe a rozproszone systemy komputerowe Równoległe systemy komputerowe (ang. parallel computer systems) zawierają wiele współpracujących procesorów wykorzystywanych do wykonania programów. Systemy takie nazywamy również systemami wieloprocesorowymi (ang. multi-processor systems). Systemy równoległe (wieloprocesorowe) są fizycznie skupione w obrębie jednej obudowy lub kilku obudów znajdujących się w bliskim sąsiedztwie (np. w tej samej sali).

3 Jeżeli system komputerowy zawiera wiele odrębnych komputerów (zawierających procesor z całą hierarchią pamięci i urządzeniami wejścia/wyjścia) połączonych ze sobą zewnętrzną siecią, umożliwiająca wymianę danych (również kodu programów), to mówimy wtedy o systemie wielokomputerowym albo sieci komputerowej (ang. multicomputer system, computer network). Komputery w sieci komputerowej są zwykle rozproszone na dużej przestrzeni geometrycznej budynek, miasto, kraj lub wiele krajów (w przeciwieństwie do systemów równoległych). Dlatego systemy wielokomputerowe (sieci komputerowe) nazywamy również systemami rozproszonymi (ang. distributed systems). Wykonują się w nich tzw. obliczenia rozproszone.

4 Dla wykonania w systemie równoległym lub rozproszonym, program musi być podzielony na fragmenty, wykonywane w poszczególnych procesorach lub komputerach. Nazywa się to zrównolegleniem programu (ang. program parallelization). Ze względu na sposób podziału programu sposób zrównoleglenia programu, wyróżniamy: zrównoleglenie oparte na dekompozycji danych (ang. data decomposition), zrównoleglenie oparte na dekompozycji kodu programu (ang. code decomposition), zrównoleglenie oparte na obu tych sposobach dekompozycji (ang. data and code decomposition).

5 Przy dekompozycji danych, kod programu jest zwykle wykonywany równolegle na mniejszych podzespołach danych a potem zbierane są wyniki częściowe, co zwykle wymaga pewnej ilości dodatkowych obliczeń. Zrównoleglenie przez dekompozycję danych zwykle stosuje się do programów o dużych zespołach danych i regularnych strukturach (np. wektory, macierze, listy, drzewa). Przy dekompozycji kodu programu, każdy fragment programu zawiera odrębne dane, określone poprzez podział kodu. Zrównoleglenie przez dekompozycję kodu stosuje się do programów o nieregularnych strukturach danych.

6 Wykonanie fragmentów programu po zrównolegleniu na wiele procesorów (komputerów) często wymaga wymiany wyników częściowych - danych, podczas wykonywania. Tę wymianę danych nazywamy komunikacją między procesorami (komputerami) (ang. inter-processor communication, inter-computer communication). Komunikacja w systemach wielokomputerowych (sieciach komputerowych) zajmuje czas niepomijalny z punktu widzenia czasu wykonania programów. W systemach równoległych, komunikacja danych (programów) zachodzi bardzo szybko i zdarza się, że jest ona pomijalna w stosunku do czasu obliczeń.

7 Pomijalność czasu komunikacji w całkowitym czasie wykonania programu zależy od: ziarna zrównoleglenia programów (ang. grain of parallelism) relacji między szybkością obliczeń w procesorach (komputerach) a szybkością komunikacji między procesorami (komputerami). Pod względem ziarnistości zrównoleglenia wyróżniamy: programy drobnoziarniście równoległe (ang. fine-grained parallel programs), w których średni czas obliczeń między komunikacjami jest mały i stosunek czasu obliczeń do czasu komunikacji w całym programie jest niski programy gruboziarniście równoległe (ang. coarse-grained parallel programs), w których średni czas obliczeń między komunikacjami jest duży i stosunek czasu obliczeń do czasu komunikacji w całym programie jest wysoki.

8 2. Systemy wieloprocesorowe ze wspólną i rozproszoną pamięcią Dane i kod programu równoległego są przechowywane w systemie równoległym w pamięci operacyjnej dostępnej dla procesorów systemu. Ze względu na sposób organizacji i wykorzystywania pamięci operacyjnej przez procesory systemy wieloprocesorowego systemy równoległe dzielimy na: systemy ze wspólną pamięcią (współdzieloną, dzieloną) (ang. shared memory system) systemy z pamięcią rozproszoną (ang. distributed memory systems) systemy z rozproszoną pamięcią wspólną (ang. distributed shared memory).

9 System wieloprocesorowy z współdzieloną pamięcią (silnie związany) Procesor 1 Procesor 2 Procesor n Sieć łącząca procesory z modułami pamięci i układami wejścia/wyjścia Pamięć 1 Pamięć 2 Pamięć m We/Wy 1 We/Wy k Współdzielone moduły pamięci Układy We/Wy

10 W systemie ze wspólną pamięcią, wszystkie procesory mają prawo korzystać z całej przestrzeni adresowej pamięci operacyjnej systemu. Fragmenty tej przestrzeni są zwykle ulokowane w odrębnych modułach pamięciowych, wyposażonych w odrębne dekodery adresu.

11 Komunikacja między procesorami (fragmentami programów) w systemie ze wspólną pamięcią odbywa się za pomocą rozkazów dostępu do zmiennych dzielonych w pamięci. Jest ona nazywana komunikacją przez zmienne dzielone (ang. communication through shared variables). Pobieranie rozkazów do wykonania w procesorach również odbywa się ze wspólnej pamięci.

12 W systemie ze wspólną pamięcią, efektywność dostępu do modułów pamięci zależy od budowy i własności sieci łączącej. Sieć łącząca jest czynnikiem ograniczającym przepustowość dostępu do pamięci dla większej liczby procesorów. Ogranicza to liczbę procesorów w tych systemach, przy których zapewniona jest dobra wydajność obliczeń równoległych.

13 Systemy wieloprocesorowe ze wspólną pamięcią nazywane są systemami silnie związanymi (ang. tightly coupled system) lub wieloprocesorami (ang. multiprocessor). Ze względu na symetryczny dostęp wszystkich procesorów do wszystkich modułów pamięci, obliczenia w tych systemach nazywane są w literaturze symetrycznym wieloprzetwarzaniem (ang. Symmetric Multiprocessing SMP) a systemy takie są nazywane w j. ang. Symmetric Multiprocessors.

14 System wieloprocesorowy z rozproszoną pamięcią (luźno związany) Pamięć lokalna 1 We/Wy1 Pamięć lokalna 2 We/Wy2 Pamięć lokalna n We/Wy n Szyna lokalna Szyna lokalna Szyna lokalna Procesor 1 Procesor 2 Procesor n Łącze Łącze Łącze Sieć łącząca procesory

15 W systemie wieloprocesorowym z rozproszoną pamięcią, każdy procesor jest wyposażony we własną pamięć lokalną (ang. local memory) z lokalną przestrzenią adresową dostępną tylko dla tego procesora. Procesory mogą wymieniać dane poprzez sieć łączącą procesory realizując komunikację przez przesyłanie komunikatów (ang. message passing). W programach wykonywane są do tego celu rozkazy nadaj komunikat i odbierz komunikat.

16 Komunikaty są wysyłane używając w rozkazach identyfikatorów obiektów (zmiennych) zwanych kanałami komunikacyjnymi (ang. communication channel). Kanały reprezentują połączenie (ang. connection) istniejące (lub stworzone w sieci połączeń) między łączami komunikacyjnymi (ang. communication link) procesorów.

17 Łącza komunikacyjne mogą być: szeregowe równoległe.

18 Specjalne procesory przystosowane do przesyłania komunikatów, które mają wbudowanych kilka łączy - od 4 do 6 : wybrane procesory DSP Data Signal Processors SHARC, firmy Analog Devices 4 do 6 łączy równoległych 4 lub 8 bitowych), Motorola DSP 56005, AT&T DSP 1610, DSP 3207, Texas Instruments TMS 320Cx0. dawniej transputery 4 łącza szeregowe,

19 W procesorze komunikacyjnym, z każdym z łączy współpracuje niezależny kontroler łącza. Steruje on zewnętrznymi transmisjami danych na zasadzie DMA - bezpośredni dostęp do pamięci. Kontroler bezpośredniego dostępu do pamięci DMA (ang. Direct Memory Access Interface, Direct Memory Access Module) umożliwia transmisje danych między pamięcią operacyjną a urządzeniami zewnętrznymi bez pośrednictwa ze strony procesora.

20 Idea współpracy układów we/wy z procesorem poprzez układy DMA Szyna adresowa i sterująca Pamięć operacyjna Adresy, sygnały sterujące Procesor Szyna danych Dane Dane Zwolnienie szyn pamięci we/wy 1... we/wy n Sterownik DMA... Żądanie/potwierdzenie 1 Żądanie/potwierdzenie n

21 Kontroler DMA jest wyposażony w 4 autonomiczne kanały dostępu do pamięci, do których podłączone są linie żądań dostępu DRQi (DMA Request) i zezwoleń dostępu DACKi (DMA Acknowledge) od urządzeń zewnętrznych. Każdy z kanałów może sterować jedną transmisją między urządzeniem zewnętrznym a pamięcią operacyjną. Urządzenia mogą wysyłać żądania dostępu jednocześnie. Układ wyboru zgłoszenia wybiera jedno ze zgłoszonych żądań zgodnie z zaprogramowanym systemem priorytetów. Do procesora jest wysyłany sygnał HRQ (Hold Request żądanie wstrzymania dostępu do szyny pamięci). Procesor zawiesza swoją komunikację z pamięcią operacyjną, oddaje DMA nadzór nad szyną systemową idącą do pamięci (adresową, danych i sterującą) wysyłając do DMA sygnał HLDA (Hold Acknowledge potwierdzenie wstrzymania). Od tej pory, aż do wycofania sygnału HRQ, kontroler DMA będzie sprawował sterowanie dostępem do pamięci. Po otrzymaniu sygnału HLDA, kontroler DMA odpowiada do urządzenia zewnętrznego sygnałem DACKi, potwierdzając rozpoczęcie transmisji, której przebieg będzie zgodny z zaprogramowanym dla danego kanału rodzajem transmisji.

22 Uproszczony schemat blokowy kanału DMA Szyna danych procesora Licznik adresów Licznik słów Rejestr sterujący Rejestr stanu Szyna adresowa pamięci Układ sterujący DRQi DACKi HRQ HLDA... Bity adresu oraz sygnały sterujące: z procesora, dla pamięci i urządzenia zewn. Układ sterowania DMA podaje do pamięci adresy danych, sygnały sterujące oraz odlicza liczbę przesyłanych słów. Układ ten wysyła również sygnały odczytu i zapisu do urządzenia zewnętrznego, które sterują przesyłaniem danych do/z tego urządzenia.

23 Realizacja przesłania komunikatów w procesorach z łączami komunikacyjnymi: przy nadaniu - komunikat jest automatycznie pobierany z pamięci procesora przez kontroler łącza i wysyłany do łącza, przy odbiorze - odebrany z łącza komunikat jest automatycznie przesyłany do pamięci. Systemy wieloprocesorowe z rozproszoną pamięcią nazywane są w literaturze systemami luźno związanymi (ang. loosely coupled system).

24 W systemach z rozproszoną pamięcią jest możliwe jednoczesne połączenie bardzo wielu procesorów i stąd bardzo dużo jednoczesnych transmisji danych. Pozwala to na uzyskanie bardzo dużej efektywności komunikacji między procesorami i obliczeń w procesorach (wynika to z rozproszenia dostępów do pamięci). Dlatego systemy równoległe z rozproszoną pamięcią takie nazywane są również systemami z masywnym przetwarzaniem równoległym (ang. Massively Parallel Processing MPP).

25 Komunikacja przez przesyłanie komunikatów może odbywać się zgodnie z: modelem synchronicznym (ang. synchronous communication model) asynchronicznym (ang. asynchronous communication model).

26 Przy modelu synchronicznym, procesy (programy) - nadający i odbierający, synchronizują swoje wykonanie na rozkazach komunikacji w danym kanale. Oznacza to, że proces nadający może nadawać dopiero wtedy, gdy proces odbierający w innym procesorze doszedł do wykonania rozkazu odbierania w tym kanale. Ponieważ komunikacja zachodzi przy wykonaniu rozkazów nadania i odbioru w obydwu procesorach jednocześnie, nie jest potrzebne buforowanie komunikatów i są one przesyłane jakby bezpośrednio z pamięci jednego procesora do pamięci drugiego. Odbywa się to pod kontrolą kontrolerów zewnętrznych łączy komunikacyjnych w obu procesorach.

27 Przy modelu asynchronicznym, procesy (programy): nadający i odbierający, nie synchronizują wykonania komunikacji w danym kanale. Komunikat jest nadawany do kanału w dowolnej chwili i trafia do bufora dla komunikatów w danym kanale - w kontrolerze łącza po drugiej stronie połączenia między procesorami. Proces odbierający odbiera komunikat odczytując go z bufora danego kanału.

28 Systemy wieloprocesorowe z rozproszoną pamięcią wspólną Trzecim rodzajem systemu wieloprocesorowego jest system z rozproszoną pamięcią (ang. distributed shared memory) inaczej zwaną wirtualną pamięcią dzieloną (ang. virtual shared memory). W systemach takich, które są obecnie najsilniej rozwijane, każdy procesor ma lokalną pamięć operacyjną. Jednakże, każda pamięć jest umieszczona we wspólnej przestrzeni adresowej całego systemu. Każdy procesor może mieć dostęp do pamięci lokalnej dowolnego innego procesora.

29 Komunikacja między procesorami w systemach z rozproszoną pamięcią wspólną, odbywa się przez dostęp do zmiennych dzielonych. Odbywa się to po prostu przez wykonanie rozkazu "czytaj" lub "zapisz" zmienne w pamięci innego procesora. W każdym procesorze istnieje układ sterowania dostępem do pamięci. Układ sterowania dostępem do pamięci, rozpoznaje bieżące adresy używane w rozkazach procesora: lokalny lub odległy. Jeśli adres jest lokalny, to kieruje się adres do szyny dostępu do lokalnej pamięci. Jeśli adres jest odległy, to wysyła się adres wraz ze wskazaniem rodzaju operacji (odczyt/zapis) do innego procesora (ściślej do jego układu sterowania dostępem). Przesłanie adresu a później danych odbywa się za pośrednictwem sieci łączącej pamięci wszystkich procesorów (ściślej ich układy sterowania dostępem do pamięci).

30 System wieloprocesorowy z rozproszoną pamięcią wspólną Pamięć lokalna 1 We/Wy1 Pamięć lokalna 2 We/Wy2 Pamięć lokalna n We/Wy n Szyna lokalna Szyna lokalna Szyna lokalna Procesor 1 Ster. dostępu m Procesor 2 Ster. dostępu Procesor n Ster. dostępu Sieć dostępu do odległych modułów pamięci

31 Systemy wieloprocesorowe z rozproszoną pamięcią wspólną są nazywane w literaturze systemami ze skalowalnym przetwarzaniem równoległym (ang. Scalable Parallel Processing - SPP). Nazwa SPP wynika z tego, że ze wzrostem liczby procesorów w systemie, użytych do wykonania danego programu równoległego, wydajność systemu rośnie zgodnie ze współczynnikiem wzrostu liczby procesorów. Tę cechę nazywamy skalowalnością systemu równoległego (ang. parallel system scalability). System jest skalowalny jeśli jego wydajność (szybkość wykonywania programów) rośnie proporcjonalnie do liczby procesorów w systemie.

32 3. Miary wydajności systemów równoległych i rozproszonych Najprostszą miarą korzyści jaka wypływa ze zrównoleglenia obliczeń procesów jest przyspieszenie obliczeń. Zakładamy, ze mamy system równoległy zawierajacy p procesorów pracujących równolegle. Przyspieszenie obliczeń równoległych (ang. computation speedup) obliczeń jest zdefiniowane jako stosunek czasu wykonania programu na 1 procesorze T(1) do czasu wykonania programu na p procesorach T(p). S ( p ) = T (1) T ( p ) Przyspieszenie jest wielkością bezwymiarową i musi spełniać warunek S ( p ) p.

33 Przyspieszenie jest miarą skrócenia czasu wykonania programu dzięki zrównolegleniu, nie podaje jednak efektywności wykorzystania procesorów przy wykonaniu programu równoległego. Efektywność obliczeń równoległych (ang. efficiency) jest to stosunek przyspieszenia obliczeń do liczby procesorów p wykonujących obliczenia. S( p) E ( p) = = p p T (1) T ( p) Wzrost przyspieszenia obliczeń równoległych jest ograniczony, gdy wewnętrzne sekwencyjne części programu zaczynają dominować nad częścią zrównolegloną programu.

34 Skalowalność systemu równoległego jest to własność systemu równoległego stanowiąca zdolność do dostarczania niezmniejszonej wydajności równoleglych obliczeń przy zwiększaniu liczby procesorów w systemie. System równoległy jest w pełni skalowalny dla danego programu jesli przy n-krotnym zwiększeniu liczby procesorów przyspieszenie równoległe wykonania tego programu wzrosło n razy. Wykres przyspieszenia równoległego wykonania programu w funkcji liczby procesorów dla systemu w pełni skalowalnego jest liniowy. Dla systemu nie w pełni skalowalnego (nieskalowalnego) wzrost przyspieszenia równoległego w funkcji liczby procesorów nie jest liniowy i nachylenie krzywej przyspieszenia maleje. W większości przypadków systemy równoległe nie są w pełni skalowalne, gdyż przy zwiększeniu liczby procesorów wzrastają koszta komunikacji między procesorami (czas wymiany danych między procesorami podczas obliczeń równoległych) co powoduje wzrost przyspieszenia wolniejszy niż liniowy.

35 Czas wykonania obliczeń w procesorze systemu równoległego jest sumą czasu czystych obliczeń procesora i czasu komunikacji (wymiany danych wraz z wszelkimi opóźnieniami). Sprawność wykonania programu równoległego wykonanego na p procesorach Spr(p) jest to stosunek łącznego czasu czystych obliczeń obl(p) do sumy łącznego czasu obliczeń obl(p) i komunikacji kom(p). Spr( p) = obl( p) obl( p) + kom( p) = 1+ 1 kom( p) obl( p) Dla wielu programów, przy wzroście liczby procesorów łączny czas czystych obliczeń nie zmienia się lub rośnie bardzo wolno, natomiast łączny czas komunikacji rośnie stosunkowo szybko. W wyniku tego, przy wzroście liczby procesorów, często maleje sprawność równoległego wykonania programu.

36 Sprawność wykonania programu równoleglego może być wykorzystana dla oceny skalowalności systemu równoległego dla danego problemu obliczeniowego przy rosnącym rozmiarze zadań (np. rosnących rozmiarów danych dla danego algorytmu rozwiazania problemu). Przy zwiększeniu liczby procesorów, aby zachować tę samą sprawność systemu należy wykonać zadania o większym rozmiarze (wtedy rośnie składnik obl(p) i sprawność Spr(p) może utrzymać taką samą wartość. Można wyznaczyć tzw. funkcję stałej sprawności względem rozmiaru zadania (ang. isoefficiency function). Ten system równoległy jest lepiej skalowalny dla danego problemu obliczeniowego, dla którego funkcja stałej sprawności względem rozmiaru zadania rośnie wolniej.

37 4.1 Prawo Amdahla (1967) Każdy program zawiera dwa rodzaje obliczeń: obliczenia, które mogą być wykonywane tylko sekwencyjnie (szeregowo), obliczenia, które mogą być zrównoleglone i wykonane na pewnej liczbie równolegle pracujących procesorów. Prawo Amdahla podaje w jaki sposób obecność sekwencyjnych fragmentów obliczeń w programie wpływa na przyspieszenie równoległego wykonania programu. Założenia. Niech s oznacza ułamek całego czasu T(1) wykonania programu na 1 procesorze (sekwencyjnego), który procesor spędza w części szeregowej programu. Ułamek czasu T(1), który może być wykonany równolegle na pewnej liczbie procesorów p wynosi 1 s. Zakładając że, czas wykonania każdej linii programu jest jednakowy, wtedy s jest ułamkiem liczby linii sekwencyjnego fragmentu programu w całym programie, 1 s jest liczbą linii programu, którą można zrównoleglić.

38 Czas wykonania programu na p procesorach T(p) wynosi: T (1) T ( p) = st (1) + (1 s). p Przyspieszenie wykonania programu na p procesorach S(p) wynosi: T (1) S( p) = T ( p) T (1) = T (1) st (1) + (1 s) p = s + 1 (1 s) p gdzie s jest ułamkiem całego czasu wykonania programu na 1 procesorze, który odpowiada części programu, która nie może być zrównoleglona.

39 Biorąc pod uwagę powyższy wzór: S( p) = s 1 (1 s) + p zauważymy, że niezależnie od tego ile procesorów użyjemy w obliczeniach równoległych, przyspieszenie dla bardzo dużego p będzie ograniczone od góry wartością s 1. Dla dużej liczby procesorów zrównoleglenie programu sekwencyjnego, w którym część s nie może być zrównoleglona, może dać przyspieszenie conajwyżej s 1.-krotne Jeśli s = 0,5 to przyspieszenie równoległe może wynieść conajwyżej 2. Jeśli s = 0.1 to przyspieszenie równoległe może wynieść conajwyżej 10. Jeśli s = 0,05 to przyspieszenie równoległe może wynieść conajwyżej 20.

40 Jeżeli tylko 1% obliczeń jest wykonywany sekwencyjnie, = 0, 01 to przyspieszenie nie będzie większe niż 100. s, Wykres przyspieszenia programu w funkcji liczby procesorów n oraz wielkości części sekwencyjnej s programu

41 4.2 Prawo Gustafsona (1988) Mamy system równoległy złożony z p procesorów. Założenia. Znamy łączny czas obliczeń sekwencyjnych ts w programie oraz czas wykonania programu tp na komputerze równoległym złożonym z p procesorów. Chcemy wyznaczyć przyspieszenie równoległe wykonania programu. Przyspieszenie równoległe dane jest wzorem: S ( p ) = T (1) T ( p ) gdzie T(1) to czas wykonania sekwencyjnego na 1 procesorze a T(p) to czas wykonania równoległego na p procesorach. Mamy T(p) = tp. Trzeba wyznaczyć T(1). T ( 1) = ts + ( tp ts) p = ts(1 p) + ptp = ptp ts( p 1)

42 Dzielimy przez tp i otrzymujemy: S( p) = p ts( p 1) tp Widzimy, że przyspieszenie S(p) ma wartość maksymalną p dla ts = 0. Gdy ts 0 to przyspieszenie ma wartości mniejsze od p w stopniu zależnym od stosunku ts do tp. Np. dla ts/tp = 0.5 S(p) wynosi S(p) = p p +0.5 = 0.5 p Dla ts/tp = 0.1 mamy S(p) = p p = 0.9 p Różnica między prawami Amdahla i Gustafsona. Prawo Amdahla bada mozliwe przyspieszenia równoległe w funkcji liczby procesorów dla stałego rozmiaru problemu i programu. Prawo Gustafsona bada przyspieszenia równoległe w funkcji liczby procesorów dla zmiennego rozmiaru problemu i programu przy zachowaniu tej samej wartości czasu obliczeń równoległych.

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

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

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

Architektura komputerów. Układy wejścia-wyjścia komputera

Architektura komputerów. Układy wejścia-wyjścia komputera Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs

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

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

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

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

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

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

Architektura komputera

Architektura komputera Architektura komputera Architektura systemu komputerowego O tym w jaki sposób komputer wykonuje program i uzyskuje dostęp do pamięci i danych, decyduje architektura systemu komputerowego. Określa ona sposób

Bardziej szczegółowo

Analiza efektywności przetwarzania współbieżnego

Analiza efektywności przetwarzania współbieżnego Analiza efektywności przetwarzania współbieżnego Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak 1/4/2013 Analiza efektywności 1 Źródła kosztów przetwarzania współbieżnego interakcje

Bardziej szczegółowo

Mikroprocesor Operacje wejścia / wyjścia

Mikroprocesor Operacje wejścia / wyjścia Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne

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

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

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

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

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

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

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

Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci

Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci Układ Podstawy Informatyki - Układ bezpośredniego dostępu do pamięci alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu Układ 1 Układ Wymiana informacji Idea Zasady pracy maszyny W Architektura

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

Urządzenia zewnętrzne

Urządzenia zewnętrzne Urządzenia zewnętrzne SZYNA ADRESOWA SZYNA DANYCH SZYNA STEROWANIA ZEGAR PROCESOR PAMIĘC UKŁADY WE/WY Centralna jednostka przetw arzająca (CPU) DANE PROGRAMY WYNIKI... URZ. ZEWN. MO NITORY, DRUKARKI, CZYTNIKI,...

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania

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

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

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 8 Magistrale systemowe Magistrala Układy składające się na komputer (procesor, pamięć, układy we/wy) muszą się ze sobą komunikować, czyli być połączone. Układy łączymy ze

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć

Bardziej szczegółowo

8. MAGISTRALE I GNIAZDA ROZSZERZEŃ. INTERFEJSY ZEWNĘTRZNE.

8. MAGISTRALE I GNIAZDA ROZSZERZEŃ. INTERFEJSY ZEWNĘTRZNE. 8. MAGISTRALE I GNIAZDA ROZSZERZEŃ. INTERFEJSY ZEWNĘTRZNE. Magistrala (ang. bus) jest ścieżką łączącą ze sobą różne komponenty w celu wymiany informacji/danych pomiędzy nimi. Inaczej mówiąc jest to zespół

Bardziej szczegółowo

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych Architektura Systemów Komputerowych Bezpośredni dostęp do pamięci Realizacja zależności czasowych 1 Bezpośredni dostęp do pamięci Bezpośredni dostęp do pamięci (ang: direct memory access - DMA) to transfer

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie

Bardziej szczegółowo

Zadania jednorodne 5.A.Modele przetwarzania równoległego. Rafał Walkowiak Przetwarzanie równoległe Politechnika Poznańska 2010/2011

Zadania jednorodne 5.A.Modele przetwarzania równoległego. Rafał Walkowiak Przetwarzanie równoległe Politechnika Poznańska 2010/2011 Zadania jednorodne 5.A.Modele przetwarzania równoległego Rafał Walkowiak Przetwarzanie równoległe Politechnika Poznańska 2010/2011 Zadanie podzielne Zadanie podzielne (ang. divisible task) może zostać

Bardziej szczegółowo

Programowanie współbieżne Wstęp do obliczeń równoległych. Rafał Skinderowicz

Programowanie współbieżne Wstęp do obliczeń równoległych. Rafał Skinderowicz Programowanie współbieżne Wstęp do obliczeń równoległych Rafał Skinderowicz Plan wykładu Modele obliczeń równoległych Miary oceny wydajności algorytmów równoległych Prawo Amdahla Prawo Gustavsona Modele

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

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

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko Wprowadzenie do systemów operacyjnych mgr inż. Krzysztof Szałajko Co to jest system operacyjny? Co to jest system komputerowy? 2 / 37 Definicja: system operacyjny System operacyjny jest programem pośredniczącym

Bardziej szczegółowo

Mikroinformatyka. Koprocesory arytmetyczne 8087, 80187, 80287, i387

Mikroinformatyka. Koprocesory arytmetyczne 8087, 80187, 80287, i387 Mikroinformatyka Koprocesory arytmetyczne 8087, 80187, 80287, i387 Koprocesor arytmetyczny 100 razy szybsze obliczenia numeryczne na liczbach zmiennoprzecinkowych. Obliczenia prowadzone równolegle z procesorem

Bardziej szczegółowo

Wprowadzenie do systemów operacyjnych

Wprowadzenie do systemów operacyjnych SOE - Systemy Operacyjne Wykład 1 Wprowadzenie do systemów operacyjnych dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW System komputerowy Podstawowe pojęcia System operacyjny

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 7 (15.05.2010) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

Układy wejścia/wyjścia

Układy wejścia/wyjścia Układy wejścia/wyjścia Schemat blokowy systemu mikroprocesorowego Mikroprocesor połączony jest z pamięcią oraz układami wejścia/wyjścia za pomocą magistrali systemowej zespołu linii przenoszącymi sygnały

Bardziej szczegółowo

Hardware mikrokontrolera X51

Hardware mikrokontrolera X51 Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Hardware mikrokontrolera X51 (zegar)

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

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka PAMIĘCI Część 1 Przygotował: Ryszard Kijanka WSTĘP Pamięci półprzewodnikowe są jednym z kluczowych elementów systemów cyfrowych. Służą do przechowywania informacji w postaci cyfrowej. Liczba informacji,

Bardziej szczegółowo

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin Podstawy techniki cyfrowej Układy wejścia-wyjścia mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Układem wejścia-wyjścia nazywamy układ elektroniczny pośredniczący w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Tryby komunikacji między procesami w standardzie Message Passing Interface. Piotr Stasiak Krzysztof Materla

Tryby komunikacji między procesami w standardzie Message Passing Interface. Piotr Stasiak Krzysztof Materla Tryby komunikacji między procesami w standardzie Message Passing Interface Piotr Stasiak 171011 Krzysztof Materla 171065 Wstęp MPI to standard przesyłania wiadomości (komunikatów) pomiędzy procesami programów

Bardziej szczegółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy: Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej

Bardziej szczegółowo

Wykład 14. Zagadnienia związane z systemem IO

Wykład 14. Zagadnienia związane z systemem IO Wykład 14 Zagadnienia związane z systemem IO Wprowadzenie Urządzenia I/O zróżnicowane ze względu na Zachowanie: wejście, wyjście, magazynowanie Partnera: człowiek lub maszyna Szybkość transferu: bajty

Bardziej szczegółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

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

PL B1 PRZEDSIĘBIORSTWO BADAWCZO- -PRODUKCYJNE I USŁUGOWO-HANDLOWE MICON SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ, KATOWICE, PL

PL B1 PRZEDSIĘBIORSTWO BADAWCZO- -PRODUKCYJNE I USŁUGOWO-HANDLOWE MICON SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ, KATOWICE, PL RZECZPOSPOLITA POLSKA (12) OPIS PATENTOWY (19) PL (11) 205621 (13) B1 Urząd Patentowy Rzeczypospolitej Polskiej (21) Numer zgłoszenia: 368490 (22) Data zgłoszenia: 14.06.2004 (51) Int.Cl. H04L 29/00 (2006.01)

Bardziej szczegółowo

WPROWADZENIE Mikrosterownik mikrokontrolery

WPROWADZENIE Mikrosterownik mikrokontrolery WPROWADZENIE Mikrosterownik (cyfrowy) jest to moduł elektroniczny zawierający wszystkie środki niezbędne do realizacji wymaganych procedur sterowania przy pomocy metod komputerowych. Platformy budowy mikrosterowników:

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

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

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

Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2018/19 Problem: znajdowanie

Bardziej szczegółowo

Pamięci masowe. ATA (Advanced Technology Attachments)

Pamięci masowe. ATA (Advanced Technology Attachments) Pamięci masowe ATA (Advanced Technology Attachments) interfejs systemowy w komputerach klasy PC i Amiga przeznaczony do komunikacji z dyskami twardymi zaproponowany w 1983 przez firmę Compaq. Używa się

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

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

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

Informatyka. informatyka i nauki komputerowe (computer science)

Informatyka. informatyka i nauki komputerowe (computer science) Informatyka informacja i jej reprezentacje informatyka i nauki komputerowe (computer science) algorytmika efektywność algorytmów poprawność algorytmów złożoność obliczeniowa, problemy NP-trudne (NP-zupełne)

Bardziej szczegółowo

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4 Pamięć wirtualna Przygotował: Ryszard Kijaka Wykład 4 Wstęp główny podział to: PM- do pamięci masowych należą wszelkiego rodzaju pamięci na nośnikach magnetycznych, takie jak dyski twarde i elastyczne,

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

Działanie systemu operacyjnego

Działanie systemu operacyjnego Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej

Bardziej szczegółowo

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

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Ł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

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

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

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

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

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

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

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

Organizacja typowego mikroprocesora

Organizacja typowego mikroprocesora Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają

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

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Wydajność systemów a organizacja pamięci Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Motywacja - memory wall Krzysztof Banaś, Obliczenia wysokiej wydajności. 2 Organizacja pamięci Organizacja pamięci:

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

Urządzenia wejścia-wyjścia

Urządzenia wejścia-wyjścia Urządzenia wejścia-wyjścia Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Klasyfikacja urządzeń wejścia-wyjścia Struktura mechanizmu wejścia-wyjścia (sprzętu i oprogramowania) Interakcja

Bardziej szczegółowo

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut Podstawy Projektowania Przyrządów Wirtualnych Wykład 9 Wprowadzenie do standardu magistrali VMEbus mgr inż. Paweł Kogut VMEbus VMEbus (Versa Module Eurocard bus) jest to standard magistrali komputerowej

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia

Algorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia Algorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@kaims.pl Oficjalna strona wykładu http://www.kaims.pl/

Bardziej szczegółowo

Architektura komputerów Wykład 2

Architektura komputerów Wykład 2 Architektura komputerów Wykład 2 Jan Kazimirski 1 Elementy techniki cyfrowej 2 Plan wykładu Algebra Boole'a Podstawowe układy cyfrowe bramki Układy kombinacyjne Układy sekwencyjne 3 Algebra Boole'a Stosowana

Bardziej szczegółowo

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling) Struktury systemów komputerowych Architektura systemu komputerowego Działanie systemu komputerowego Struktura we/wy Struktura pamięci Hierarchia pamięci Ochrona sprzętowa Architektura 2.1 2.2 Działanie

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

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski Architektura systemów komputerowych dr Artur Bartoszewski Układy we/wy jak je widzi procesor? Układy wejścia/wyjścia Układy we/wy (I/O) są kładami pośredniczącymi w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Literatura. 3/26/2018 Przetwarzanie równoległe - wstęp 1

Literatura. 3/26/2018 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

Rywalizacja w sieci cd. Protokoły komunikacyjne. Model ISO. Protokoły komunikacyjne (cd.) Struktura komunikatu. Przesyłanie między warstwami

Rywalizacja w sieci cd. Protokoły komunikacyjne. Model ISO. Protokoły komunikacyjne (cd.) Struktura komunikatu. Przesyłanie między warstwami Struktury sieciowe Struktury sieciowe Podstawy Topologia Typy sieci Komunikacja Protokoły komunikacyjne Podstawy Topologia Typy sieci Komunikacja Protokoły komunikacyjne 15.1 15.2 System rozproszony Motywacja

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 2012/2013 Wykład nr 6 (03.04.2013) Rok akademicki 2012/2013, Wykład

Bardziej szczegółowo

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury Rok akademicki 2012/2013, Wykład nr 6 2/43 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 2012/2013

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

Budowa karty sieciowej; Sterowniki kart sieciowych; Specyfikacja interfejsu sterownika sieciowego; Open data link interface (ODI); Packet driver

Budowa karty sieciowej; Sterowniki kart sieciowych; Specyfikacja interfejsu sterownika sieciowego; Open data link interface (ODI); Packet driver BUDOWA KART SIECIOWYCH I ZASADA DZIAŁANIA Karty sieciowe i sterowniki kart sieciowych Budowa karty sieciowej; Sterowniki kart sieciowych; Specyfikacja interfejsu sterownika sieciowego; Open data link interface

Bardziej szczegółowo

ARCHITEKTURA PROCESORA,

ARCHITEKTURA PROCESORA, ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy

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

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

Przesyłania danych przez protokół TCP/IP

Przesyłania danych przez protokół TCP/IP Przesyłania danych przez protokół TCP/IP PAKIETY Protokół TCP/IP transmituje dane przez sieć, dzieląc je na mniejsze porcje, zwane pakietami. Pakiety są często określane różnymi terminami, w zależności

Bardziej szczegółowo

PL B1 H04L 17/00. Fig2. Instytut Łączności, Warszawa, PL. Józef Odrobiński, Warszawa, PL Zbigniew Główka, Warszawa, PL

PL B1 H04L 17/00. Fig2. Instytut Łączności, Warszawa, PL. Józef Odrobiński, Warszawa, PL Zbigniew Główka, Warszawa, PL RZECZPOSPOLITA POLSKA Urząd Patentowy Rzeczypospolitej Polskiej ( 1 2 ) OPIS PATENTOWY ( 1 9 ) PL (11) 187506 ( 1 3 ) B1 (21) Numer zgłoszenia 324539 ( 5 1 ) IntCl7 H04L 17/00 (22) Data zgłoszenia 28.01.1998

Bardziej szczegółowo

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami dr inż. Mariusz Uchroński Wrocławskie Centrum Sieciowo-Superkomputerowe Agenda Cykliczny problem przepływowy

Bardziej szczegółowo

Zagadnienia związane z systemem IO

Zagadnienia związane z systemem IO Zagadnienia związane z systemem IO Wprowadzenie Urządzenia I/O zróżnicowane ze względu na Zachowanie: wejście, wyjście, magazynowanie Partnera: człowiek lub maszyna Szybkość transferu: bajty na sekundę

Bardziej szczegółowo

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11 Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.

Bardziej szczegółowo