• Nie Znaleziono Wyników

Harmonogramowanie statyczne zależnych zadań obliczeniowych w homogenicznym systemie wieloprocesorowym

N/A
N/A
Protected

Academic year: 2022

Share "Harmonogramowanie statyczne zależnych zadań obliczeniowych w homogenicznym systemie wieloprocesorowym"

Copied!
6
0
0

Pełen tekst

(1)

Seria: AUTOMATYKA z. 150

N r k o l. 1796

A r tu r B A N U L , K o n ra d W A L A

W yższa S zkoła B izn esu w D ą b ro w ie G órniczej

H A R M O N O G R A M O W A N I E S T A T Y C Z N E Z A L E Ż N Y C H Z A D A Ń O B L I C Z E N I O W Y C H W H O M O G E N I C Z N Y M S Y S T E M IE

W IE L O P R O C E S O R O W Y M

S treszczenie. Przedstaw iono m odel fo rm a ln y statycznego p ro ble m u harm ono- gram ow ania zależnych zadań o b lic z e n io w y c h w h om og en icznym systemie w ie lo p ro c e s o ro w y m . O pisano sześć a lg o ry tm ó w k o n s tru k c y jn y c h harm ono- gram ow ania, a następnie, b io rą c pod uwagę szereg w ażn ych k ry te rió w oceny ja k o ś c i, zaprezentow ano w y n ik i badań ko m p u te ro w y c h ich e fektyw n ości.

S T A T I C S C H E D U L IN G O F D E P E N D E N T C O M P U T A T I O N A L T A S K S IN H O M O G E N E O U S M U L T IP R O C E S S O R S Y S T E M

S u m m a ry . A fo rm a l m odel o f static scheduling p ro ble m o f dependent co m p uta tio na l tasks in hom ogeneous m ultip ro ce sso r system is presented. W e g iv e a d e scrip tio n o f six c o nstructive scheduling a lg o rith m s and than, ta k in g into account a n um be r o f im p o rta n t e ffic ie n c y crite ria , w e p icture the results o f co m p uta tio na l in ve stiga tion s o f th e ir perform ance.

1. W s tę p

N P -tru d n y p ro b le m harm o no gra m o w an ia zadań o b lic z e n io w y c h polega na ta k im p rz y d z ia le zadań do ró w n o le g le p racujących procesorów , k tó ry m in im a liz u je te rm in y zakończenia zadań. Prezentow ana praca d o ty c z y p ro b le m u h arm onogram ow ania statycznego, k ie d y to harm onogram je s t w yzna czon y przed w y k o n a n ie m a p lik a c ji na jednostce w ie lo p ro c e s o ro w e j za p om ocą a lg o ry tm ó w k la s y A P N (ang. A rb itra ry Processors Netw ork), tj. a lg o ry tm ó w p rzyd zie la ją cych zadania dla d o w o ln e j a rc h ite k tu ry sieci procesorów .

W p un kcie 2 przedstaw iono m odel fo rm a ln y o p tym a lizo w a n e g o harm onogram u, w p u n kcie 3 opisano badane a lg o ry tm y konstruujące dopuszczalne harm onogram y, a p u n k t 4 zaw iera w ybrane w y n ik i badań k o m p u te ro w ych . W zakończeniu podano k ró tk ie podsum ow anie badań ko m p ute row ych.

2. O p is p ro b le m u

R ozw ażany je s t w ie lo p ro c e s o ro w y system k o m p u te ro w y z ło ż o n y ze z b io ru M = {1 , 2, ..., m ) ide ntycznych procesorów , z k tó ry c h ka żdy posiada w łasną pam ięć R A M

(2)

oraz ta k ą sam ą m oc o blicze n io w ą , tj. czas w y k o n a n ia danego zadania na d o w o ln y m procesorze je s t je d n a k o w y . Procesory system u k o m u n ik u ją się m ię d z y sobą przez d w u k ie ru n k o w e połączenia o je d n a k o w e j przepustow ości. S tru ktu ra sieci procesorów je s t je d n y m z param etrów p ro ble m u i w szczególnym p rzyp ad ku m oże b yć typu

„k a ż d y z ka ż d y m ” . P rzyjęto, że czas traco ny na ko m u n ik a c ję zadań p rz y d z ie lo n y c h do tego samego procesora je s t p o m ija n y , g dyż operacje te w y k o n y w a n e są w je g o p am ię ci R A M . K o m u n ik a ty od zadań nadaw czych do zadań o db io rczych p rz y d z ie lo n y c h do różnych p rocesorów są przesyłane ka nałam i k o m u n ik a c y jn y m i, p rz y czym czasy przesyłu są zależne od ro z m ia ru k o m u n ik a tu i d łu go ści kanału estym ow anej lic z b ą p rocesorów pośredniczących w procesie p rze syłu ko m u n ik a tu , stąd czas przesyłu k o m u n ik a tu p o m ię d zy zadaniam i a lo k o w a n y m i do różnych p rocesorów je s t ż w ie lo k ro tn ia n y przez liczbę p ro ceso ró w pośredniczących w procesie przesyłania danych (por. [2 ], [4 ]).

R ó w n o le g ły pro gram k o m p u te ro w y je s t p o d z ie lo n y na elem entarne, n iepodle- gające dalszem u p o d z ia ło w i, zadania o b lic z e n io w e w y k o n y w a n e na p o jed ynczych procesorach, bez przerw ań podczas procesu re a liz a c ji. P rogram je s t m o d e lo w a n y za p om ocą w ażonego a cykliczn eg o d ig ra fii W T P D (ang. Weighted Task Precedence D ig ra p h ) G - (V, E), gdzie z b ió r w ie rz c h o łk ó w V reprezentuje z b ió r zadań, a z b ió r łu k ó w E relację poprzedzania w zb io rze V. Z a kła d a m y znajom ość a p r io r i fu n k c ji p:

V - » R * określającej średni czas w y k o n a n ia zadań oraz fu n k c ji a: E —> R*

określającej w agę łu k ó w d e fin iu ją c ą średni je d n o s tk o w y czas przesłania k o m u n ik a tu p o m ię d z y zadaniam i p rz y d z ie lo n y m i do różn ych procesorów , gdzie czas przesłania k o m u n ik a tu p o m ię d zy k o n k re tn y m i procesoram i badanej a rc h ite k tu ry je s t ró w n y czasow i je d n o s tk o w e m u pom nożonem u przez liczbę procesorów pośredniczących w procesie przesyłania (por. [2 ], [5 ]).

3. A lg o r y tm y k o n s tr u k c y jn e

D a n ą w e jś c io w ą d la a lg o ry tm u ko nstru kcyjn e g o je s t d ig ra f p on um erow anych to p o lo g ic z n ie zadań o b lic z e n io w y c h . A lg o ry tm , na podstaw ie heu rystyczn ych reguł, p rz y d z ie la d la każdego procesora p o d z b ió r u po rządkow anych lin io w o w podciąg zadań, gdzie ko le jno ść zadań w podciągu je s t zgodna z p orząd kiem czę ścio w ym w p ro w a d zo n ym w zbiorze zadań V p rzez d ig ra f G. N a tej podstaw ie w yznaczane są te rm in y zakończenia zadań Cj , j e V, p rzy czym u w zględniane są czasy przesyłania k o m u n ik a tó w m ię d z y procesoram i charakterystyczne d la badanej a rc h ite k tu ry połączeń procesorów w system ie w ielop roce sorow ym .

W p ra cy podano w y n ik i badan następujących a lg o ry tm ó w ko n s tru k c y jn y c h : 1. A lg o ry tm B S A (ang. Bubble Scheduling and A llo c a tio n) A hm ad a i K w o k a , działa na zasadzie p rzy d z ie le n ia w s zystkich , o d p o w ie d n io uszeregow anych (szczegóły w [5 ]), zadań do procesora centralnego o n ajw ię kszej lic z b ie połączeń z sąsiednim i.

W k o le jn y c h kroka ch a lg o ry tm u zadania przyd zie lan e są do p rocesorów sąsiednich, je ż e li nie sp ow oduje to zw iększenia te rm in u zakończenia zadań.

2. A lg o ry tm R L (ang. Ready L ist) bazuje na technice lis ty g o to w y c h zadań. N a p oczątku p rz y d z ie la zadania niem ające p o p rz e d n ik ó w do procesora o najw iększej lic z b ie połączeń z procesoram i sąsiednim i. W k o le jn y c h iteracjach a lg o ry tm w yznacza p o d z b ió r zadań, k tó ry c h p o p rz e d n ik i zostały ju ż p rz y d z ie lo n e do procesorów .

(3)

N astępnie zadania p o d z b io ru są szeregowane zgodnie z n ie m a leją cą w a rto ś c ią reze rw czasow ych zadań w d ig ra fie w ażo nym (G, p , a) i p rzyd zie lan e do procesorów g w arantujących im najw cześniejszy te rm in rozpoczęcia (por. [1 ], [5 ]).

3. A lg o ry tm P L (ang. P r io r i ty L ist) je s t o pa rty na ko n c e p c ji lis ty p rio ry te tó w w yznaczanej d la w s z y s tk ic h zadań na początku d zia łan ia a lg o rytm u . W pracy przebadano a lg o ry tm z fu n k c ją p rio ry te tu t_level(i) określającą n ajdłuższą ścieżkę od w ie rz c h o łk a p oczątkow ego do w ie rz c h o łk a i (z w yłą cze n ie m i) w d ig ra fie w ażo nym (G, p , a). W p ie rw sze j ite ra c ji a lg o rytm u zadania bez p o p rz e d n ik ó w p rzyd zie lon e są do procesora o najw ię kszej lic z b ie połączeń z procesoram i sąsiednim i. W następnych iteracjach w ybie ra ne są zadania o n ajw ię kszej w arto ści p rio ry te tu z p od zb io ru zadań n ie p rz y d z ie lo n y c h (por. [1 ], [5 ]).

4. A lg o ry tm L C (ang. L in e a r Clustering, [3 ], [2 ]) K i n f a i B ro w n e ’ a, k tó ry w p ra cy przystosow ano do kla sy a lg o ry tm ó w A PN. A lg o ry tm L C p rzyd zie la w p ie rw sze j k o le jn o ś c i zadania leżące na ścieżce k ry ty c z n e j d ig ra fu w ażonego (G, p, a). W k o le jn y c h iteracjach p rzyd zie lo n e zadania usuwane są z d ig ra fu i ścieżka k ry ty c z n a w yznaczana je s t od now a. W a lg o ry tm ie została zastosowana dodatkow a procedura P R E C E D E szeregująca zadania na procesorze zgodnie z p orząd kiem czę ścio w ym o kre ślo n ym przez d ig ra f.

5. A lg o ry tm E Z (ang. Edge Zeroing, [4 ],[2 ]) Sarkara, przystosow any także do kla sy a lg o ry tm ó w A P N , p rz y d z ie la zadania do procesorów , p om ię d zy k tó ry m i je s t n ajw ię k s z y czas p rze syłu k o m u n ik a tó w , p rz y czym do szeregowania zadań p rz y d z ie lo n y c h do procesora zastosowano procedurę P R E C E D E .

6. A lg o ry tm L C E Z (ang. L in e a r C lustering & Edge Zeroing) stanow i h y b ry d o w e połączenie d w ó ch opisanych p o w y ż e j. W pierw szej k o le jn o ści działa a lg o ry tm L C , a następnie k o n tro lę p rze jm u je a lg o ry tm E Z ; i w ty m a lg o ry tm ie zastosowano procedurę P R E C E D E .

4. B a d a n ia k o m p u te ro w e

D o badań ko m p u te ro w y c h w ygenerow ane zostały 72 kla sy d ig ra fó w zadań po 100 egzem plarzy w każdej z klas. G ra fy zadań sklasyfiko w an e zostały w e d łu g : lic z b y zadań w g ra fie : {5 0 ; 75; 1 0 0 }, w s p ó łc z y n n ik ó w gęstości łu k ó w : {0 ,1 ; 0,3; 0,5; 0 ,7 }, w s p ó łc z y n n ik a CCR1 : {0 ,1 ; 0,2; 1; 2; 5; 1 0 }, p rz y c z y m czasy zadań b y ły losow ane z p rze dzia łu w arto ś c i [100, 5 00 ]; w sum ie 7 200 d ig ra fó w .

D o badań zastosowano następujące a rc h ite k tu ry w ielop roce sorow e : 9-proce- sorowe połączenie ty p u „k a ż d y z ka ż d y m ” , pierścień 4, 5, 10 procesorów , torus 16 procesorów , 6-procesorow a struktura g w ia z d y , 9-procesorow a sieć 3x3, 27-procesorow a h ip erko stka 3x3x3.

Jednym z k ry te riu m oceny rozw iąza ń w yzna czon ych przez a lg o ry tm y k o n stru kcyjn e , dalej nazyw ane k ró tk o rozw iąza nia m i, je s t p ro ce n to w y stopień p o p ra w y rozw iąza ń przez k la syczn y a lg o ry tm T S (ang. Tabu Serach) re a liz u ją c y 100 ite ra c ji p o p ra w y dla czasu tabu 10, gdzie czas tabu je s t param etrem pam ięci k ró tk o te rm in o w e j a lg o ry tm u TS, określającym liczbę ite ra c ji tabu a try b u tó w ruchu generow anych rozw iąza ń bazow ych.

' CCR - (ang. Communication to Computation Ratio) - iloraz średniego czasu przesyłu komunikatów do średniego czasu wykonania

(4)

N a w ykresach, ry s u n k i 1 - 8, s łu p k i p rze d sta w ia ją w a rto ści średnie, natom iast o d c in k i p io n o w e przylegające do s łu p k ó w zakresy o dchyleń od w arto ś c i średniej w s k a ź n ik ó w ja k o ś c i rozw iązań w yzna czon ych przez badane a lg o ry tm y , ze w zg lę d u na następujące k ry te ria :

1. Średni te rm in Cmax = maxy C, zakończenia zadań (rys. 1);

2. Średnia suma te rm in ó w % Cj zakończenia zadań (rys. 2);

3. Procentow a popraw a rozw iąza ń przez a lg o ry tm p op ra w TS (iy s .3 );

4. E fe k ty w n o ś ć a lg o ry tm ó w d e fin io w a n a ja k o stosunek przyspieszenia p ro gram u do lic z b y zastosow anych procesorów w w yzn a czo n ym ro zw ią za n iu (rys.4 );

5. L ic z b a najlepszych rozw iązań w yzna czon ych przez badane a lg o ry tm y d la każdego d ia gra fu (rys. 5);

6. L ic z b a n ajgorszych rozw iązań w yzn a czo n ych przez badane a lg o ry tm y d la każdego d ia gra fu (rys. 6);

7. C a łk o w ity czas trw a n ia o blicze ń w y k o n a n y przez poszczególne a lg o ry tm y k o n stru kcyjn e dla w s z y s tk ic h badanych d ia g ra fó w (rys.7);

8. Przyspieszenie pro gram u (ang. speed - up) (rys. 8).

30000 n 25000 20000

15000 10000

5000 0

T l

B S A R L PL I C EZ LCEZ

Rys. 1. Czasy zakończenia zadań

1200000 1000000

800000 600000 400000 200000

o

B S A R L P L D C E Z D C E Z

Rys. 2. Suma czasów zakończenia zadań

20,00

$ 15,00 re 10,00

'SH. 5,00 wo

0,00

r l E 1 fi 1

i

B S A R L P L D C E Z L C E Z

Rys. 3. Procentowa poprawa przez alg. TS

0,7 0,6 0,5 0,4 0,3 0.2

0,1 -

o

B S A R L P L L C E Z D C E Z

Rys. 4. Efektywność algorytmów

(5)

1

1800 1600

| 1400

|

1200

|

1000

| 800 .§> 600

f 400

?

200

0

B S A R L P L L C E Z L C E Z |

Rys. 5. Liczba najlepszych rozwiązań Rys. 6. Liczba najgorszych rozwiązań

I L

2

1,5

1

0,5

0

B S A R L P L U C E Z L C E Z

Rys. 7. Suma czasów działania Rys. 8. Przyspieszenie programu

5. Z a k o ń c z e n ie

P rzedstaw ione p ow yżej w y n ik i badań a lg o ry tm ó w ko ns tru k c y jn y c h , w ykonane dla szerokiego spektrom a rch ite ktu r i klas d ig ra fó w , u m o ż liw ia ją sfo rm u ło w an ie następujących w n io s k ó w :

• A lg o ry tm y R L , P L i L C E Z generują najlepsze rozw iązania pod w zględem ca łk o w ite g o te rm in u zakończenia zadań i sum y te rm in ó w zakończenia zadań.

• N a jle p ie j p o p ra w ia n y m i rozw iąza nia m i przez a lg o ry tm TS są rozw iązania w yznaczone przez a lg o ry tm PL.

• N a jw ię k s z ą efektyw ność, m ie rzon ą rozproszeniem zadań o b lic z e n io w y c h w system ie w ie lo p ro ce so ro w ym , za pew niają a lg o ry tm y R L i P L . A lg o ry tm B S A , w którego k o n s tru k c ji założona je s t m ig racja zadań, nie w y ró ż n ił się w ty m zakresie w przeprow adzonych eksperym entach.

• A lg o ry tm y R L i P L , z je d n e j strony nie w yzna czają rozw iązań najgorszych, ale za to , z d ro gie j strony, dużą liczbę zadań najlepszych. A lg o ry tm B S A w yznaczał n a jw ię k s z ą liczbę rozw iązań najlepszych, ale i dużą liczbę zadań najgorszych.

Z a u w a żm y także, że w pra w d zie a lg o ry tm y L C i E Z w yzn a cza ły dużą liczbę rozw iąza ń najgorszych, ale ich hybryda, a lg o ry tm L C E Z , ju ż znaczenie mniejszą.

• W a żn ym k ry te riu m dla system ów czasu rzeczyw istego je s t czas w yznaczania rozw iązań. B io rą c pod uwagę to k ry te riu m , n ajlepszym i okazały się a lg o ry tm y R L

(6)

i P L , k tó ry c h prosta zasada d z ia łan ia n ie w ym a ga stosow ania ko sztow n ych p rocedur spraw dzających popraw ność uszeregow ania zadań na procesorach.

N a jg o rszy pod ty m w zględem okazał się a lg o ry tm B S A .

• W badaniach przyśpieszenia także najlepsze w y n ik i u z y s k a ły a lg o ry tm y R L i PL.

B IB L IO G R A F IA

1. B anuł A .: K o m p u te ro w y system do badania e fe k ty w n o ś c i p rz y b liż o n y c h a lg o ry tm ó w harm onogram ow ania zadań o b lic z e n io w y c h w w ie lo p ro c e s o ro w y m system ie czasu rzeczyw istego, D y p lo m o w a praca m agisterska, A ka d e m ia G ó rn ic z o -H u tn ic z a w K ra k o w ie , p ro m o to r: K . W ala, K ra k ó w 2007.

2. B anul A ., W a la K .: H arm onogram ow anie zadań o b lic z e n io w y c h w w ie lo ­ p rocesorow ym system ie czasu rzeczyw istego. A u to m a ty k a - P ó łro c z n ik A k a d e m ii G ó rn ic z o -H u tn ic z e j w K ra k o w ie , to m 7, z. 3, 2003, s. 627-635.

3. K im S. J. and B ro w n e J. C.: A general approach to m ap pin g o f p arallel co m p uta tio n upon M u ltip ro c e s s o r architectures, In te rn a tio n a l Conference on P a ra lle l Processing, v o l. 3, p. 1-8.

4. Sakara V .: P a rtitio n in g and scheduling p a ra lle l program s fo r executing on m ultiprocessors, The M I T Press, C am bridge, M A 1989.

5. K w o k Y . K ., A h m a d I.: Static scheduling a lg o rith m s fo r a llo c a tin g directed tasks graphs to m ultiprocessors, A M C Com puting Surveys, v o l. 31, N o . 4, 1999, p. 406-471.

Recenzent: P rof. d r hab. inz. Jerzy Jozefczyk

A b s tr a c t

A fo rm a l m odel o f static scheduling p ro b le m o f dependent com putational tasks in homogeneous m ultipro cesso r system is presented. The dependent co m p uta tio na l tasks are m odeled b y a c y c lic w eighted task precedence degraph G = (V, E), w here V is a task set, E describes the precede re la tio n in set V and fu n c tio n s p : V -A I t , a: E —»

F t d efine the mean task execution and message transm ission tim e, respectively. W e g ive a description o f six co nstructive scheduling a lg orith m s fo r schedule ca lcu la tio n before a pp lica tion softw are execution b y means o f the a lg o rith m s o f A P N (A rb itra ry Processors N e tw o rk ) class. T a k in g into account a num ber o f im p o rta n t e ffic ie n c y c riterion s, w e p icture the results o f c o m p uta tio na l inve stiga tion s o f th e ir perform ance.

The co m p uta tio na l results are discussed at the end o f the paper.

Cytaty

Powiązane dokumenty

Assuming that one of the logistic goals of the company is to reduce the time of execution of the production process (lead time), which in the make-to-order system results in

Opierając się na koncepcji poznawczej autorka wskazuje na teoretyczne uwarunkowania nadziei ze szczególnym uwzględnieniem możliwości pracy re- socjalizacyjnej ukierunkowanej

-> uwaga: w przypadku programów wielowątkowych i ich fragmentów czas CPU jest sumą czasów CPU wszystkich wątków (porównanie czasu CPU i zewnętrznego (zegarowego) może

Soft starter VS65 jest podzielony na cztery sekcje, które izolują szafę średniego napięcia od szafy niskiego napięcia.. Rysunek poniższy pokazuje

(Oznacza to, że zwykle osoba ta jest grzeczna, a w danym dniu wyjątkowo inaczej się zachowuje. Gdyby zawsze była niegrzeczna, zastosowalibyśmy czas Present Simple bo określałby on

Dotyczyła ona średniego odsetka czasu przebywania w wy- branych obszarach wyznaczanego na podstawie minutowych cen akcji z pierwszej i drugiej połowy dnia.. Przedstawiona

Pole opadu nad zlewnia rzeki Soły obliczone metodą GMOO (autor:

Zarówno dla obciążonej linii (rys. 1a) w czasie zakłócenia wyraźnie widoczny jest spadek amplitudy napięcia w fazach objętych zakłóceniem i wzrost napięcia w