ZESZYTY N A U K O W E POLITECHNIKI ŚLĄSKIEJ_______________________________ 2002
Seria: AUTO M A TY KA z. 134 N r kol. 1554
Jacek BŁA ŻEW IC Z1' 2, M ikhail Y. KO VALYOV3, Maciej M A C H O W IA K 1, Denis TRY STR A M 4, Jan W ĘG LA RZ1' 2
1 Politechnika Poznańska
2 Instytut Chemii Bioorganicznej PAN w Poznaniu
3 Institute o f Engineering Cybernetics, N ational Academy o f Sciences o f Belarus, M ińsk 4 Laboratory Inform atique et Distribution, IM AG, Grenoble, Francja
SZEREGOWANIE ZADAŃ ELASTYCZNYCH
S treszczenie. Przedstaw iono tutaj problem szeregowania n niezależnych zadań w systemie procesorów równoległych. Zadania są elastyczne, tj. zadanie m oże być wykonywane przez kilka procesorów jednocześnie oraz prędkość wykonywania zadania je st nieliniow ą funkcją od ilości procesorów przydzielonych do niego.
Całkow ita liczba procesorów w systemie wynosi m i je st to górna granica liczby procesorów, które m ogą być używane przez w szystkie zadania w tym samym czasie.
D odatkowym założeniem je st podzielność zadań oraz m ożliw ość zm iany liczby procesorów przydzielonych do zadania w trakcie jego wykonywania. Celem je st znalezienie uszeregowania, dla którego czas zakończenia wszystkich zadań je st najkrótszy z możliwych.
Prezentowany je s t prosty algorytm o złożoności 0 (n ), rozwiązujący ten problem w przypadku, kiedy wszystkie funkcje prędkości wykonywania s ą wypukłe. Jeżeli funkcje te są wszystkie wklęsłe, przedstaw iono algorytm pakow ania prostokątów (PACK), który rozw iązuje ten problem w czasie wielomianowym.
SCHEDULING M ALLEABLE TASKS
S u m m ary . The problem o f optim al scheduling n independent tasks on a parallel processor system is studied. The tasks are malleable, i.e. a task may be executed by several processors sim ultaneously and the processing speed o f a task is a non-linear function o f the num ber o f processors allotted to it. The total num ber o f processors is m and it is an upper bound o n the num ber o f processors that can be used by all the tasks sim ultaneously. It is assum ed that the tasks are preemptable and the num ber o f processors allotted to one task m ay change during its execution. The objective is to find a schedule for w hich the makespan, is m inimized.
An 0 (n ) algorithm is presented to solve this problem w hen all the processing speed functions are convex. If these functions are all concave the rectangles packing (PACK) algorithm is presented, w hich solves the problem in polynomial time.
68 J. Błażewicz, M. Y. Kovalyov, M. M achowiak, D. Trystram, J. W ęglarz
1. Wprowadzenie
Szeregowanie zadań elastycznych (malleable) okazało się obiecującym narzędziem przy efektywnej im plem entacji pewnych praktycznych problem ów pojawiających się w rów noległych system ach komputerowych. Problem szeregowania takiego rodzaju zadań na procesorach równoległych możemy sform ułować następująco [9, 10, 11,12, 14].
M am y n niezależnych zadań dostępnych w czasie początkowym t = 0. Należy je uszeregow ać do w ykonania w systemie składającym się z m identycznych, równoległych procesorów . W każdej chwili t pew na liczba procesorów m oże zostać użyta do wykonania danego zadania. Jednakże procesor nie m oże wykonywać więcej niż jedno zadanie w danej jednostce czasu, a całkow ita liczba używanych jednocześnie procesorów nie m oże być
w iększa od m.
Z każdym zadaniem 2} zw iązana je st pew na ilość p j > 0 pracy do wykonania. Jeżeli do wykonania zadania 2} użyjemy, w przedziale czasowym o długości t, r procesorów, to ilość pracy do w ykonania zadania wew nątrz tego przedziału je st rów na gj(r) t, gdzie g /r ) > 0 jest niem alejącą funkcją prędkości wykonywania zadania, zdefiniow aną dla r e {0 , 1 , ..., m ), oraz g j(0 ) = 0 i g j(l) = 1. C ałkow ita ilość pracy dla zadania 2} m usi być równa pj, dla każdego j .
D la każdego zadania uszeregowanie specyfikuje przedziały czasowe, wewnątrz których dane zadanie pow inno być wykonywane, oraz liczbę procesorów potrzebnych do w ykonania zadania w ew nątrz tych przedziałów. Celem je s t znalezienie takiego uszeregow ania, które spełnia powyższe ograniczenia oraz m inim alizuje największy moment zakończenia w szystkich zadań (m akespan).
Podobny problem , w którym procesory reprezentują ciągły, podzielny i odnawialny zasób, rozpatryw any był przez W ęglarza [16]. N atom iast całą gamę problem ów z zadaniami w ieloprocesorow ym i znajdziem y w [1, 2], W dalszych rozważaniach będziem y rozróżniać oryginalny problem z dyskretnym (całkowitym) przydziałem zasobu (procesorów) jako P- D SC R oraz problem , w którym przydział procesorów nie m usi być całkowity jako P-CNTN.
W e wcześniejszych badaniach dużo uwagi poświecono problem owi P-FIX, w którym liczba procesorów przydzielonych do zadania je st niezm ienna podczas jego wykonywania.
Począw szy od D u i Leunga [7], którzy udowodnili N P-trudność tego problem u, wiele ciekawych rezultatów z tej dziedziny m ożemy znaleźć w [4, 5, 8 , 9 , 1 3 , 1 4 ] .
W naszych rozw ażaniach zajęliśm y się dw om a specjalnymi przypadkami: a) wszystkie funkcje prędkości w ykonywania, od liczby przydzielonych procesorów s ą wypukłe (convex)
Szeregowanie zadań elastycznych 69
oraz b) w szystkie funkcje s ą wklęsłe (concave). Dla pierwszego przypadku prezentujem y algorytm rozw iązujący ten problem w czasie 0 (n ). D la przypadku drugiego prezentujem y algorytm rozw iązujący problem P-CNTN (przydział procesorów do zadań nie m usi być liczbą całkowitą) w czasie 0 (n max{m, n log1 m}). Co więcej, zostało udowodnione, że minim alny moment zakończenia w szystkich zadań dla obu problem ów, P-D SC R i P-CNTN, je st taki sam.
O statecznie zależność ta posłużyła do konstrukcji algorytmu pakowania prostokątów, który korzystając z rozw iązania problem u P-CNTN, konstruuje uszeregowanie dla oryginalnego problem u w czasie 0 ( n 2).
2. M otyw acja
Poniżej przedstaw iam y kilka rzeczywistych aplikacji z zadaniami równoległym i, w których znalazł zastosow anie rozpatrywany przez nas model.
2.1. S ym ulacja d y n a m ik i m olekuł
Sym ulacja dynam iki m olekuł je st je d n ą z bardzo dynam icznie zm ieniających się dziedzin nauki. Do sprawnego przeprow adzenia obliczeń ruchów atom ów potrzeba zaawansowanych technik pozwalających na wyelim inowanie opóźnień kom unikacyjnych, takich ja k choćby asynchroniczne buforow anie opóźnień. Tylko w przypadku badania zachowania się białka potrzeba przeprowadzić obliczenia w zajem nych oddziaływań pomiędzy setkam i a naw et tysiącam i atom ów [6]. R zecz jasna, takie procesy potrzebują dużych zasobów pam ięciowych. N a w ielu najlepszych kom puterach równoległych, takich jak Cray T3E, ze w zględu na uproszczenia sprzętowe i optymalizacje kom unikacji, nie ma wirtualnego zarządzania p am ięc ią z tego względu dostępna pam ięć je st ściśle ograniczona.
W związku z tym , kiedy instancja problem u nie mieści się w pam ięci procesora, proces nie może być w ykonany bezpośrednio. Do zakończenia procesu potrzeba „ręcznego” zarządzania pamięcią w irtu a ln ą w ykonując obliczenia poza jądrem (out o f core), tj. obciążając dysk wykonaniem pośrednich obliczeń. Oczywiście, prow adzi to do zw iększenia czasu obliczeń.
Dlatego też, kiedy liczba procesorów je st wystarczająca do przechowywania danych w pamięci podręcznej, możemy zaobserwow ać nadliniowy w zrost prędkości wykonywania, (patrz rys. 1).
70 J. Błażewicz, M. Y. Kovalyov, M. M achowiak, D. Trystram, J. Węglarz
R y s. 1. F u n k c je p ręd k o ści w y k o n y w a n ia F ig. 1. P r o c e ssin g sp e ed fu n ctio n s
2.2. R o z k ła d y m acierzow e
Jednym z takich przykładów zastosow ań równoległych obliczeń bazujących na modelu zadań elastycznych je st rozkład dużych macierzy rzadkich Choleskiego (LR). Jeżeli założym y, że m acierz nie mieści się w pam ięci Cache, nastąpi spowolnienie obliczeń na jednym procesorze. W przeciw nym przypadku zaobserwowano, że zysk ze w zrostu prędkości wykonyw ania je s t w iększy niż opóźnienia komunikacyjne spow odowane dodatkowymi procesoram i. Prow adzi to do nadliniowej zależności między prędkością w ykonyw ania a liczbą przydzielonych procesorów.
Z podobnym i problem am i mamy do czynienia przy badaniu pływ ów oceanicznych, gdzie ruch m as wody zam odelowano za pom ocą tysięcy połączonych ze so b ą punktów tworzących przestrzenną kratę.
M odel zadań elastycznych je st znakom itym i sprawnym narzędziem do rozwiązywania podobnych problem ów , szczególnie w przypadku gdy, ze względu na rozm iar instancji, mamy kilka zadań i więcej procesorów.
3. P rz y d z ia ł zaso b u ciągłego
Przytoczym y teraz podstawowe wyniki z dziedziny optymalnego przydziału zasobu ciągłego, które okazały się pom ocne przy konstrukcji rozw iązania naszego problem u [16].
Podczas transform acji m odelu ciągłego do naszych potrzeb wystąpił problem definiow ania funkcji prędkości, wykonywania dla wartości niecałkowitych. Naturalnym podejściem było dążenie do zachow ania takich własności funkcji, ja k monotoniczność,
Szeregowanie zadań elastycznych 71
wklęsłość lub wypukłość. W łasności te zostaną zachowane, kiedy rozszerzym y n aszą funkcję gj za pom ocą następującej, odcinkami liniowej funkcji J J :
f j { r ) = a rg j { [ r \ ) + { \ - a r ) g j { \ r \ ) gdzie cą. = [Y ]-r, 0 <r ś m ,j = l ,. .. ,n lub f j (r ) = bj f r f + d u ri dla 0 < r< m , j= l,...,n .
W spółczynniki i d j j ^ funkcji f m ożna wyliczyć w czasie 0(m ń). Zauważm y jednocześnie, że dla r = f ( r ) = g /r ). W dalszych rozważaniach problem P-D SC R z tak zdefiniow aną funkcją f ( r ) będziem y nazywać problem em P-CNTN.
Zajm ijm y się bliżej problem em P-CNTN, w którym niecałkow ita liczba procesorów może być użyta do w ykonania zadania oraz procesory reprezentują odnawialny, podzielny i ciągły zasób, którego ilość je s t w danym czasie ograniczona przez m.
N iech oznacza m inim alną wartość Cmax dla problem u P-CNTN. K orzystając z rozważań prowadzonych przez W ęglarza [16] w prowadźm y następujące zbiory:
n
R = { r = ( r , rn) \ r J >0, £ > , < m }
7-1
zbiór możliw ych (ze w zględu na problem P-CNTN) przydziałów zasobu oraz U = { u = (u,,... , u j | U j= fj(r j),j = 1 , r e R }
zbiór możliwych, przekształconych przydziałów zasobu. D odatkowo wprowadźm y P = (pi.-.Pn)-
T w ierd ze n ie 1 (W ęglarz [15, 16]). N iech n < m, convU oznacza powłokę w ypukłą zbioru U oraz u = p / C je st lin ią p rostą w przestrzeni przekształconych przydziałów zasobu, daną w postaci parametrycznej Uj = p j / C, j = Wtedy m inim alną wartość (makespan) dla problem u P-CNTN m ożna znaleźć jako:
C°K = m in{ C | C > 0 , p / C e c o m U } (1)
Przedstawiając geom etryczną interpretację Twierdzenia 1 możemy stw ierdzić, że minimalna w artość C “ax je st w yznaczona poprzez punkt przecięcia linii prostej u = p / C z powłoką zbioru c o m łJ w n-wymiarowej przestrzeni przekształconych przydziałów zasobu.
O znaczm y taki punkt przecięcia przez u°, jednocześnie C °ax = p j / u°j, j = /,... ,n.
72 J. Błażewicz, M. Y. Kovalyov, M. M achowiak, D. Trystram, J. W ęglarz
4. W y p u k łe fu n kcje prędkości w ykonyw ania
W przypadku kiedy wszystkie funkcje f i prędkości wykonywania s ą dla każdego zadania w ypukłe, zbiór t /j e s t podzbiorem zbioru c o m U (patrz rys.2).
ffri)
m
R y s. 2. Z b ió r U, c o n v U i lin ia u = p /C d la w y p u k ły c h fu n k c ji p r ę d k o śc i w y k o n y w a n ia F ig . 2. S e t U , c o n v U a n d lin e u ** p /C fo r c o n v e x p r o c essin g sp e e d fu n ctio n s
Rozw ażm y punkty v®, takie że v®/ = fi(m ) i v®/ = 0, ł * j , j = 1,... ,n, l = 1 n.
Punkty v® reprezentują wszystkie wierzchołki płaszczyzny (powierzchni) zbioru c o m U oraz punkt przecięcia u0 należy do tej płaszczyzny. Stąd u® m oże być w yrażony jako liniowa kom binacja punktów v(,\ ...,v(n>. Toteż dla j = mamy:
Ą - t * , * ? - » / < ? - lub P j - t ^ C D v ^ , g d z ie ¿ , ¿ 0 i ¿ A i = l.
/ - I / - I / - I
n
M ożem y teraz wyliczyć Aj = Aj C°mai= p j t v®7- = p j / fi(m). Poniew aż ^ A/ = C°mix oraz i-1
Pj = Ajfi(m ), optym alne uszeregow anie uzyskujem y poprzez w yznaczenie jednego przedziału czasowego długości Aj dla zadania 7} w raz z przydzieleniem do tego zadania wszystkich procesorów.
O ptym alne uszeregowanie dla tego przypadku możemy znaleźć w czasie 0(rt).
5. W klęsłe fu n k cje pręd kości w y konyw ania
Przedstaw im y teraz rozw iązanie problem u P-CNTN dla wklęsłych funkcji prędkości w ykonywania, które następnie wykorzystamy do konstrukcji rozw iązania problem u P-DSCR.
Szeregowanie zadań elastycznych 73
5.1. R ozw iązanie p ro b le m u P -C N T N
D la tego przypadku zbiór U je st bryłą w ypukłą w n-wymiarowej przestrzeni przekształconych przydziałów zasobu, co więcej zbiór cornU = U (patrz rys. 3).
R y s. 3. P u n k t p r z ec ię c ia u°, lin ii u = p /C o r a z p o w ło k i w y p u k łe j z b io r u V F ig. 3 . I n te r se c tio n p o in t u° o f lin e u = p /C a n d th e b o u n d a r y o f c o n v e x p o ly to p e U
Do znalezienia rozw iązania problem u P-CNTN należy wykonać następujące czynności:
I. R ozw aż zbiór I wszystkich punktów przecięcia płaszczyzn Uj = f j (rj), j = ; rj = z lin ią u = p / C , C > 0, w rozważanej «-wymiarowej przestrzeni.
n
II. Stosując procedurę bisekcji znajdź taki punkt u ' e I, f ' l (al) = r ’, że ^ r} > m oraz
7-1
nie m a innych punktów pom iędzy u ' i
u°.
W ynika stąd, że funkcja f j nie posiada punktów nieciągłości w przedziale (r°j, r'j), j = Zatem, dla każdego j = mamy:u ° = f j ( r ° j ) = b j, f r ' j ]r°j + d j t f r ' j i = P j / C° max
r j ~ P j / ( bj, f r 'j 7 C ° max) ~ dj, fr 'j i f y , f r 'j 7
n n n
III. Z w arunku X 0° = m m a-3d ż C°max= 1 b / (m + Y j d Ą r )} >bĄ rj\ )>
a następnie w ylicz u° oraz r°.
II
Poniew aż p j = u°j C°max, j = oraz = m , istnieje optymalne rozwiązanie
7-1
problemu P-CNTN, w którym wszystkie zadania są wykonywane w przedziale czasowym [0. C°max] i do zadania 7} przydzielono r°j p rocesorów ,/ = (patrz rys. 4).
74 J. Błażew icz, M. Y. Kovalyov, M. M achowiak, D. Trystram, J. Węglarz
R ys. 4. R o z w ią z a n ie p ro b lem u P -C N T N Fig. 4. S o lu tio n o f P -C N T N p ro b lem
Postępując w ten sposób, zapewniamy znalezienie przydziału zasobu r'j w czasie 0 ( n 2 log2m). Poniew aż do znalezienia wszystkich w spółczynników funkcji f j potrzeba czasu rzędu 0 (m n ), dochodzim y do konkluzji, że problem P-CNTN m ożna rozw iązać w czasie 0 ( n max{m, n log2m}).
5.2. R o zw iązan ie p ro b le m u P -D SC R
W optym alnym rozwiązaniu problem u P-CNTN każde zadanie je st wykonywane w przedziale czasowym [ ] i niecałkow ita liczba r°, procesorów je st przydzielona do zadania Tt. R ozw iązanie problem u P-DSCR m ożna przedstawić jako zbiór rozłącznych prostokątów w dwuwymiarowej przestrzeni (x, y) (patrz rys. 5).
R y s. 5. R o z w ią z a n ie p r o b lem u P -D S C R Fig. 5. S o lu tio n o f P -D S C R p ro b lem
Tutaj oś (0, y) odpow iada liczbie procesorów przydzielonych do zadania, natom iast oś (0, x) je st o sią czasu.
K ażdy prostokąt je st powiązany z jakim ś zadaniem, przy czym jedno zadanie może być reprezentow ane przez kilka prostokątów.
Szeregowanie zadań elastycznych 75
Przedstaw im y teraz zasadę działania algorytmu (PACK) pakow ania prostokątów pozwalającego na optym alne rozw iązanie naszego problemu; w tym celu poczynim y kilka dodatkowych założeń i sform ułujem y potrzebne lematy.
Instancją dla algorytmu PACK je st zbiór zadań podzielony na trzy podzbiory tzw.
zadań perow ych, pojedynczych i podw ójnych. Zadanie T-, je st zerowe, jeśli r°i (w rozw iązaniu problemu P-C NTN ) je st liczbą całkowitą. Jeżeli 0<r°i<l, mówimy, że Ti je st zadaniem pojedynczym, natom iast gdy r°i >1 oraz je st liczbą niecałkowitą, zadanie 7) je st podw ójne.
Dla zadania zerowego konstruujem y jeden prostokąt o wysokości r0, i szerokości C°miU.
Jeśli pojawi się takie zadanie, wtedy możemy zredukować problem P-D SC R poprzez wykluczenie go ze zbioru zadań i dalszych rozważań.
Dla zadania pojedynczego konstruujemy również jeden prostokąt, ale o wysokości [rai ] = l i szerokości A pi / /¡(f r°(\), natom iast dla zadania podw ójnego dw a prostokąty o wysokościach odpowiednio Lr°J i | 7 / l oraz szerokościach ¿ ¡ p ,// ( L / J ) i ( l- A jp i/ffr r ° i] ) , gdzie Ai
= (fV Y l
- r0i ) f i . r 0i ^ / f ( r ° ), i = 1 , . . . , n..Następnie, bez przytaczania dowodów, wprowadzim y kilka pomocniczych lematów związanych z własnościam i tak skonstruowanych prostokątów:
Lemat 1. Całkow ite pole pow ierzchni wszystkich prostokątów je s t równe m C°max.
Lemat 2. Szerokość prostokąta związanego z zadaniem pojedynczym nie przekracza C°mca.
Lemat 3. Łączna szerokość obu prostokątów reprezentujących zadanie podw ójne je st rów na r °
^ max-
Aby działać poprawnie algorytm PACK powinien spełniać następujące warunki:
a) W szystkie prostokąty powinny się dokładnie mieścić w prostokącie, zwanym BIG (patrz rys. 6), o wysokości m i szerokości C°max. Ten warunek zachodzi, kiedy w szystkie zadania używ ają w każdym przedziale czasowym nie więcej niż m procesorów oraz czas zakończenia wszystkich zadań je st minimalny.
b) W ykonywanie na osi (0, x) prostokątów związanych z tym samym zadaniem m oże zostać przerw ane tylko na końcu (prawy bok prostokąta BIG). Ten warunek zachodzi, gdy w każdym m omencie w ysokością prostokąta je st całkow ita liczba procesorów przydzielonych w tym czasie do danego zadania.
c) Cała praca zw iązana z zadaniem Ti zostanie wykonana.
Teraz zajm iem y się opisem kolejnych kroków algorytmu pakow ania prostokątów.
Algorytm ten składa się z n iteracji; w tym przypadku n oznacza liczbę w szystkich zadań
76 J. Błażewicz, M. Y. Kovalyov, M. M achowiak, D. Trystram, J. W ęglarz
pojedynczych i podw ójnych. Poniew aż zadania zerowe m ają całkowity przydział procesorów, w ostatecznym rozw iązaniu będ ą wykonywane najpierw w każdym przedziale czasowym na stałej liczbie procesorów.
W każdej iteracji prostokąty odpowiadające zadaniom pojedynczym lub podw ójnym są przydzielane (pakowane) w w olną przestrzeń prostokąta BIG, przy czym dla zadań podw ójnych wyższy z prostokątów je st pakowany w pierwszej kolejności. Sposób, w jakim pakujem y kolejne prostokąty, nazwaliśmy regułą południow o-zachodniego narożnika i brzmi ona następująco: p rzydziel p rostokąt najniższem u i poło żo n em u najbardziej n a lewo n arożnikow i w olnej przestrzeni prostokąta B IG .
m
0
Algorytm PA C K zatrzym uje się, kiedy w szystkie prostokąty zostały zapakowane.
M ożna łatw o wykazać, że tak skonstruow any zbiór prostokątów spełnia warunki a) - c) oraz w yznacza optym alne rozw iązanie problem u P-DSCR. Zauważmy, że w rozwiązaniu optym alnym liczba przydzielonych do zadania 7) procesorów zm ienia się co najwyżej dwa razy pom iędzy dw om a wartościam i i ir® l (patrz rys. 5).
Do konstrukcji rozw iązania algorytm PAC K potrzebuje czasu rzędu 0(n), co oznacza, że całkow itą złożoność czasow ą problem u P-D SC R szeregow ania zadań elastycznych determ inuje złożoność czasowa problem u P-CNTN, która wynosi 0 ( n max{m, n Iog2m}).
6. P o d su m o w an ie
Rozw ażaliśm y tutaj problem szeregowania zadań elastycznych z prędkościami wykonyw ania zależnym i nieliniow o od liczby przydzielonych procesorów . Pokazaliśmy, że ciągły przypadek problem u z przydziałem zasobu (procesorów), m ożna rozw iązać w
p r o c e s s o r s BI G
u
T a s k s a lr e a d y s c h e d u l e d
tin
pOt-’ m a x
R y s. 6. P r z y d z ia ł za d a n ia p o d w ó jn e g o F ig. 6. A ssig n in g a 2 -ta sk
Szeregowanie zadań elastycznych 77
wielomianowym czasie. Z drugiej strony, bardziej realistyczny problem dyskretny, rozwiązaliśmy w czasie 0 (n ) używając algorytmu pakow ania prostokątów. D alsze poszukiwania w tej dziedzinie koncentrują się na znalezieniu bardziej efektywnych rozw iązań dla problem u dyskretnego z dowolnymi funkcjami prędkości wykonywania.
LITERATURA
1. Błażew icz J., Drabowski M ., W ęglarz J.: Scheduling m ultiprocessor tasks to m inim ize schedule length, IEEE Trans. Com put., vol. C-35, 1986, s.389-393.
2. Błażewicz J., Ecker K., Plateau B., Trystram D. (eds.): Handbook on Parallel and D istributed Processing, Springer, Berlin, N ew York, 2000.
3. Błażewicz J., Ecker K., Pesch E., Schm idt G., W ęglarz J.: Scheduling Com puter and M anufacturing Processes, Springer, Berlin, N ew York, 1996.
4. Błażew icz J., M achow iak M., M ounie G., Trystram D., W ęglarz J.: Scheduling malleable tasks with convex processing speed functions, Revista Iberoam ericana de Com putacion, vol. 2 (4), 2000, s .158-165.
5. Błażew icz J., M achowiak M ., M ounie G., Trystram D.: A pproxim ation algorithm s for scheduling independent malleable tasks, In R. Sakellariou et al (Eds.): Euro-Par 2001, Lecture N otes in Com puter Science, vol. 2150, Springer-Verlag 2001, s.191-197
6. Bernard P. E., Gautier T., Trystram D.: Large scale sim ulation o f parallel m olecular dynamics, In Proceedings o f Second M erged Symposium IPPS/SPDP 13* International Parallel Processing Symposium and 10th Symposium on Parallel and Distributed Processing, San Juan, Puerto Rico, 1999.
7. Du J., Leung J.Y-T.: Com plexity o f scheduling parallel tasks systems, SIAM Journal on Discrete M athem atics, vol. 2, 1989, s.473-487.
8. Drozdowski M.: Scheduling m ultiprocessor tasks - An overview, European Journal o f Operational Research, vol. 94,1 9 9 6 , s.215-230.
9. Ludwig W. T.: A lgorithm s for scheduling malleable and nonm alleable parallel tasks, PhD thesis, U niversity o f W isconsin - M adison, Departm ent o f Com puter Science,
1995.
10. Rapine C., Scherson I., Trystram D.: On-line scheduling o f parallelizable jo b s, Lecture Notes in Com puter Science, vol. 1470,1998.
11. Scherson I., Subram anian R., Reis V., Campos L.: Scheduling com putationally intensive data parallel programs, In Ecole française de parallélism e, reseaux et systèmes, Placem ent dynam ique et repartition de charge: application aux systèmes parallèles et repartis, Presquele de Giens, INRIA, 1996, s. 107-129.
12. Ludwig W ., Schw iegelshohn U., Turek J., W olf J., Yu P.: Smart SM ART bounds for weighted response tim e scheduling, SIAM Journal on Com puting, vol. 28, 1999, s.237- 253.
78 J. Błażew icz, M. Y. Kovalyov, M. M achowiak, D. Trystram, J. Węglarz
13. M ounie G., R apine C., Trystram D.: Efficient approxim ation algorithms for scheduling m alleable tasks, In Eleventh ACM Symposium on Parallel A lgorithm s and Architectures (SPA A '99), ACM , 1999, s.23-32.
14. Turek J., W olf J., Y u P.: Approxim ate algorithms for scheduling parallelizable tasks, In 4th A nnual A CM Symposium on Parallel A lgorithms and Architectures, 1992, s.323-332.
15. W ęglarz J.: Project scheduling w ith continuously-divisible, doubly constrained resources, M anagem ent Sci., vol. 27, 1981, s. 1040-1052.
16. W ęglarz J.: M odelling and control o f dynamic resource allocation project scheduling systems, In S. G. Tzafestas (ed.), Optim ization and Control o f Dynamic Operational Research M odels, N orth-H olland, Am sterdam 1982.
Recenzent: Prof. A dam Janiak
A b stra c t
Scheduling m alleable tasks has been proved to be a prom ising way for efficient im plem entation o f som e practical problem s on parallel and distributed com puters. The problem o f scheduling m alleable tasks on parallel processors can be form ulated as follows. [9,
10, 11, 12, 14]
There are n independent tasks that are available at tim e zero. They are to be scheduled for processing in a system consisting o f m, identical parallel processors. W e w ill use natural num bers to denote tasks and processors. A t each tim e instant, any num ber o f processors can be used to execute a task. However, no processor can handle more than one task at a tim e and the total num ber o f processors executing the tasks should not exceed m at any tim e.
A n am ount
pj
> 0 o f work is associated w ith each taskTj.
I f r processors are used to execute task Tj in a tim e interval o f length t, then the am ount o f w ork for com puting this task w ithin this interval is equal to gj(r) t, w here gj(r) > 0 is a non-decreasing processing speed fu n c tio n defined for r s {0, 1, ..., m ),g j(0 ) = 0, g j ( l ) - l . The total am ount o f w ork done ontask Tj m ust be equal to p j , j = 1,... ,n.
For each task, a schedule specifies the tim e intervals w ithin w hich this task is executed and the num bers o f processors allocated to the task w ithin these intervals. The objective is to find a schedule w hich satisfies the above constraints and such that the m axim um task com pletion tim e, i.e. the m akespan Cmax, is m inimized.
D enote the m inim um Cmax value by C ’max-
Szeregowanie zadań elastycznych 79
A m otivation for this problem com es from the optim al scheduling o f m ultiprocessor systems enabling for an execution o f large scale parallel com putations. A sim ilar problem in which the processors represent a continuously divisible renewable resource bounded from above, has been studied by W ęglarz [16] (cf. also 3).
In the sequel, w e refer to our original problem w ith a discrete (integer) resource as problem P-D SC R and to the problem w here the processor (resource) allocation is not required to be integer (i.e. w ith a continuously divisible resource) as problem P-CNTN. In problem P- CNTN, functions g /r ) are interpolated by piecewise linear functions betw een integer points.
Observe that in problem P-D SC R the num ber o f processors allocated to a task may change during the task execution. A malleable task my be interrupted and the processors allocated to it can be redistributed during the execution. It means that the parts o f one task can be executed in adjoining tim e intervals on the different num ber o f processors. The cost o f preemption w ill be included into the speed functions.
The follow ing results are available for problem P-FIX in w hich the (integer) num ber o f processors allocated to a task cannot change [4, 5, 8, 9, 13, 14], D u and Leung [7] proved that this problem is N P-hard. Drozdowski [8] provided a survey o f the com plexity and algorithms for multiprocessor task scheduling problem s (see also [2]).
In this paper, w e distinguish two special cases o f the problem : a) the dependence o f all processing speed functions on a num ber o f processors allotted is convex and b) this dependence is concave. For case a), an 0 (n ) algorithm is presented to solve both problem s P- CNTN and P-D SCR. For case b), problem P-CNTN is shown to be solvable in 0 (n max{m, n log2m}) time. M oreover, it is proved that the m inim um m akespan values for problem s P- DSCR and P-CNTN coincide. The rectangles packing algorithm is presented, w hich using a solution for P -C N TN problem constructs the solution for original problem in O(n) time.