I8C1S1 Bubrowiecki sprawozdanieOrr

background image

WOJSKOWA AKADEMIA TECHNICZNA

IM. JAROSŁAWA DĄBROWSKIEGO

W WARSZAWIE






OBLICZENIA RÓWNOLEGŁE I ROZPROSZONE

TEMAT: Obliczanie wartości symbolu Newtona


Prowadzący:

mgr inż. Adam Misztak

Wykonawcy:

Błażej Bubrowiecki

Grupa I8C1S1

background image


1. Schemat obliczeń równoległych (graf AGS, harmonogram)

Symbol Newtona jest to funkcja dwóch argumentów całkowitych nieujemnych:

!

!*

!

k

k

n

n

k

n





,

gdzie n>k

Symbol Newtona pojawia się także w wzorze na dwumian Newtona, gdzie jest
współczynnikiem w k-tym wyrazie rozwinięcia n-tej potęgi sumy dwóch składników.
Postać iteracyjna symbolu Newtona, którą wykorzystam w zadaniu wygląda następująco:

k

k

n

n

k

n

k

k

n

n

k

n

*

)

1

(

*

...

*

3

*

2

*

1

*

)

1

(

*

...

*

)

1

(

!

)!*

(

!





Rys.1. Graf AGS dla n=7 i k=3.

background image



Rys.2. Histogram.

Opis działania algorytmu:
Algorytm opiera on się na iteracyjnej postaci dwumianu Newtona. Na wejścia podajemy 2
zmienne, zmienna x

0

odpowiada n, a zmienna x

1

odpowiada k. Następnie oblczamy ich

różnicę (wierzchołek Z0). Po czym dla wartości (n-k) jest liczony iloczyn kolejnych liczb
naturalnych od (n-k+1) do n poprzez zwiększanie wartości (n-k) oraz przemnażanie z
wartością uzyskaną w poprzednim kroku. Podobnej operacji dokonujemy dla k tylko, że w
tym przypadku wartość wejściową zmniejszamy aż uzyskamy iloczyn kolejnych liczb
naturalnych od 1 do k (czyli uzyskamy silnie dla k). Na końcu uzyskane obliczenia cząstkowe
są dzielone, zgodnie ze wzorem na dwumian Newtona.
Występują 4 podstawowe działania: odejmowanie, mnożenie, inkrementacja (+1),
dekrementacja (-1) oraz dzielenie.




2. Oszacowanie teoretycznej złożoności obliczeniowej problemu.

Wpływ na złożoność obliczeniową mojego algorytmu ma początkowa wartość k. Ona
decyduje o głębokości grafu AGS. Wynika to z tego, że obliczenia nie są zależne od samego
n, ale od różnicy (n-k). Dla ustalonego k liczba działań, które należy wykonać żeby obliczyć
licznik dwumianu wynosi 2*(k-1)+1, a mianownik 2*(k-1). Całkowita złożoność
zaproponowanego algorytmy jako funkcję rozmiaru zadania (od wartości n i k) wynosi:

2

*

4

1

)

1

(

*

2

1

)

1

(

*

2

)

(

)

,

(

k

k

k

k

T

k

n

T

Nie udało mi się znaleźć zależności miedzy liczba procesorów, a złożonością obliczeniową,
zarówno dla procesorów pracujących z opóźnieniem jak i bez nich.




background image

3.Symulacja obliczeń równoległych.

Liczba procesorów mniejsza od rozmiaru zadania (1) , procesory jednorodne:

Rys.3. Operacje jednorodne



Rys.4. Operacje niejednorodne.

















background image

Liczba procesorów mniejsza od rozmiaru zadania (1) , procesory niejednorodne:

Rys.5. Operacje jednorodne.


Rys.6. Operacje niejednorodne.



















background image

Liczba procesorów równa rozmiarowi zadania (2) , procesory jednorodne:

Rys.7. Operacje jednorodne.


Rys.8. Operacje niejednorodne.



background image


Liczba procesorów równa rozmiarowi zadania (2) , procesory niejednorodne:

Rys.9. Operacje jednorodne.


Rys.10. Operacje niejednorodne.


background image



procesorów większa od rozmiaru zadania (4) , procesory jednorodne:

Rys.11. Operacje jednorodne.













background image




Rys.12. Operacje niejednorodne.














background image




procesorów większa od rozmiaru zadania (4) , procesory niejednorodne:

Rys.13. Operacje jednorodne.

















background image



Rys.14. Operacje niejednorodne.


4.Wartości charakterystyk oraz porównanie wyników.

Optymalna liczba procesorów to: p*=3
Złożoność obliczeniowa dla T

=8

Optymalna liczba procesorów dla rozmiaru danych 2 wynosi:

p*=3 T

1

=15

T

2

=9 T

3

=8 T

4

=8 T

10

=8

Przyspieszenie algorytmów oraz efektywność:
s

2

= T

1/

T

2

=15/9=1,666

e

2

=s

2

/2=1,666/2=0,833

s

3

= T

1/

T

3

=15/8=1,875

e

3

=s

3

/3=1,875/3=0,625

s

4

= T

1/

T

4

=15/8=1,875

e

4

=s

4

/4=1,875/4=0,46875

s

10

= T

1/

T

10

=15/8=1,875

e

10

=s

10

/10=1,875/10=0,1875

background image

Zależność złożoności algorytmu od liczby

procesorów

15

9

8

8

8

0

5

10

15

20

1

2

3

4

10

liczba procesorów

Tp

Zależność przyspeszenia algorytmu od liczby

procesorów

1

1,666

1,875

1,875

1,875

0

0,5

1

1,5

2

1

2

3

4

10

liczba procesorów

Sp

Zalezność efektywności algorytmu od liczby procesorów

1

0,833

0,625

0,46875

0,1875

0

0,2

0,4

0,6

0,8

1

1,2

1

2

3

4

10

liczba procesorów

Ep






background image

5.WNIOSKI

Złożoność obliczeniowa stworzonego algorytmu jest zależna od rozmiaru danej

k, gdyż ona decyduje o ilości obliczeń. Optymalna liczba procesorów wynosi 3, i dla
mojego rozmiaru danych taka właśnie była. Dla jednego procesora algorytm dla
przyjętego rozmiaru danych wykonywał się 15 jednostek czasu. Po zwiększeniu ich
liczby do 2 czas wykonania spadł do 9 jednostek. Gdy przekroczyłem liczbę 3
procesorów to czas wykonani ustabilizował się na poziomie 8 jednostek czasu, i był
taki sam zarówno dla 4 procesorów jak i 10. Zwiększanie liczby kolejnych procesorów
nie wpłynie na czas wykonania zadania, ponieważ pozostałe procesory będą nie
używane.

Czas wykonania algorytmu zależy także od tego czy procesory są jednorodne

czy niejednorodne, od długości wykonania poszczególnych operacji oraz od tego czy
występują opóźnienia w przesyłaniu wewnątrz jak i pomiędzy procesorami. Może
dojść do sytuacji, że opóźnienia będą tak duże w przesyłaniu danych, że zadanie
wykonane na jednym procesorze wykona się szybciej niż zadania zlecone do
wykonania na kilku maszynach.


Wyszukiwarka

Podobne podstrony:
I8C1S1 HD Sprawozdanie
I8C1S1 HD Sprawozdanie
Bubrowiecki sprawozdanie PSym i Nieznany (2)
I8C1S1 HD Sprawozdanie
sprawozdanie SPG Mirosław Klimek I8C1S1, WAT, SEMESTR VI, system pracy grupowej
2 definicje i sprawozdawczośćid 19489 ppt
PROCES PLANOWANIA BADANIA SPRAWOZDAN FINANSOWYC H
W 11 Sprawozdania
Wymogi, cechy i zadania sprawozdawczośći finansowej
Analiza sprawozdan finansowych w BGZ SA
W3 Sprawozdawczosc
1 Sprawozdanie techniczne
Karta sprawozdania cw 10
eksploracja lab03, Lista sprawozdaniowych bazy danych

więcej podobnych podstron