Seria: AUTOMATYKA z. 150
N r k o l. 1796A 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
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 .
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
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
1
1800 1600
| 1400
|
1200|
1000| 800 .§> 600
f 400
?
2000
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
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.