ALGORYTM EURYSTYCZY DO OPTYMALIZACI ROZDZIAŁU PROGRAMÓW W WIELOPROCESOROWYM SYSTEMIE IFORMATYCZYM Zbigniew BUCALSKI Streszczenie: W artyle przedstawiono zagadnienie czasowo-yalnego przydział n prograów niezależnych niepodzielnych i stron paięci operacyjnej do procesorów pracjących równolegle Czas wyonania i-tego progra na -ty procesorze oreślony jest przez pewną fncję zależną od liczby stron paięci operacyjnej przydzielonych - te procesorowi oraz od paraetrów charateryzjących wyonywany progra Dla zadanej fncji czas realizacji prograów zaproponowano pewien algoryt herystyczny wyznaczający czasowo-yalne szeregowanie prograów i przydział stron paięci operacyjnej do procesorów w wieloprocesorowy systeie inforatyczny Przedstawiono wynii esperyentów obliczeniowych przeprowadzonych na ty algorytie Słowa lczowe: wieloprocesorowy syste inforatyczny szeregowanie prograów rozdział zasobów algoryty herystyczne Wstęp Rozwój równoległych systeów przetwarzania inforacji pociągnął za sobą intensywny wzrost zainteresowania probleatyą szeregowania zadań i rozdział zasobów Szczególnego znaczenia nabiera proble inializacji dłgości szeregowania zadań na a-szynach Zadania yalizacji zarówno dysretnej ja i ciągłej należą do lasy probleów bardzo trdnych zarówno z teoretycznego ja i obliczeniowego pnt widzenia i najczęściej należą do lasy probleów P-zpełnych a więc są dość sopliowane Przy rozwiązywani tych probleów występją istotne trdności natry obliczeniowej Wynii teorii złożoności obliczeniowej oraz roziar probleów pratycznych w sposób jednoznaczny eliinją z rozważań algoryty doładne pozostawiając do zastosowania pratycznego jedynie algoryty herystyczne ożliwiające rozwiązanie postawionych probleów w róti czasie z zadowalająca doładnością Fat ten jest typowy dla tej lasy probleów yalizacji dysretnej i w przypad iedy zależy na na róti czasie obliczeń jedyny podejście jest zastosowanie algorytów herystycznych Ba-dania nad algorytai herystycznyi dostarczającyi rozwiązań zagadnień w tórych zastosowanie etod doładnych jest nieefetywne lb wręcz nieożliwe stanowią jedną z najszybciej rozwijających się gałęzi nai [ 3 4 5 6 7 8 9 0 3 4 5 6 7 8 9 0] Cele niniejszej pracy jest znalezienie taiego szeregowania n niezależnych niepodzielnych prograów na procesorach pracjących równolegle oraz taiego przydział stron paięci operacyjnej do tych procesorów aby inializować czas T za zaończenia wyonywania wszystich prograów Sposób szeregowania prograów 749
oreśla niezbędna do tego ilość zasob w postaci stron paięci operacyjnej Teatya ta porszana jż była we wcześniejszych pracach atora [ 3 4] W niniejszy artyle zaprezentowano pewien algoryt herystyczny wyznaczający czasowo-yalne szeregowanie n prograów niezależnych niepodzielnych i stron paięci operacyjnej do procesorów w wieloprocesorowy systeie inforatyczny Przedstawiono wynii badań nerycznych przeprowadzonych na ty algorytie dla losowo generowanych danych Sforłowanie proble yalizacji Rozpatrzy wieloprocesorowy syste inforatyczny przedstawiony na poniższy rysn: Procesor Zbiór prograów { i n} Procesor Procesor Paięć operacyjna stron Procesor Paięć zewnętrzna z stron Rys Wieloprocesorowy syste inforatyczny a wieloprocesorowy syste inforatyczny naładay następjące założenia: paięć operacyjna słada się z stron o jednaowej objętości ażdy procesor oże wyonywać dowolny progra i a dostęp do dowolnej strony paięci operacyjnej paięć zewnętrzna zawiera z stron; z > liczba prograów do wyonania jest więsza od liczby procesorów; n > i ażdy progra wyonywany jest bez przerwań strony paięci operacyjnej są przydzielane procesoro i podczas wyonywania prograów -ty procesor oże orzystać tylo z stron paięci operacyjnej je przydzielonych; 0 750
realizacja ażdego z prograów na procesorach si następować niezwłocznie po zaończeni wyonywania poprzedniego progra lb nastąpić w chwili zerowej gdy progra realizowany jest jao pierwszy na dowolny z procesorów iech { i n} oznacza zbiór prograów P { } - zbiór procesorów a U { } - zbiór stron paięci operacyjnej Czas wyonywania i-tego progra na -ty procesorze oreślony jest przez następjącą fncję T ) i : bi T ) a U P i ) i i gdzie a i > 0 b i > 0 są paraetrai charateryzjącyi i-ty progra i -ty procesor Przedstawiony do rozwiązania proble inializacyjny ożna scharateryzować następjąco: znajdź taie szeregowanie prograów na procesorach i tai przydział stron pa-ięci operacyjnej do procesorów aby inializować czas T zaończenia wyonywania całego zbior prograów eżeli przez oznaczyy zbiory prograów realizowanych odpowiednio na procesorze to proble polega na znalezieni taich zbiorów i taich ilości stron paięci operacyjnej przydzielonych poszczególny procesoro tóre inializją następjące ryteri yalizacji: T in axti ) ) i przy następjących założeniach: i) ii) iii) s t ; ; s t U calowite s t dodatnie Założenie iii) do ryteri ) sprawia że postawiony proble jest dość sopliowany W cel proszczenia proble przyjiey najpierw że strony paięci operacyjnej są typ ciągłego i przy ty założeni będziey wyznaczać rozwiązanie proble Zaorągliy następnie otrzyane wartości yalne do najbliższych liczb natralnych i wówczas rozpatrywany proble sprowadzi się do następjącego proble inializacji dysretno-ciągłej: ~ T in axti ) 3) i 75
przy następjących ograniczeniach: i) ii) gdzie: s t ; ; s t 0 U ~ T i :[0 ] { } R s t T i } ~ bi Ti ) ai [0 ] P jest rozszerzenie następjącej fncji: :[ ] { R i oreślony jest przez fncję: i 4) Przez = oznaczy rozwiązania zadania 3) W cel znalezienia tych rozwiązań poocne będzie wyorzystanie poniższego leat: Leat eżeli = są rozwiązaniai yalnyi zadania 3) to: i) ii) i ; ~ T i 0 0 ) const; : : : Warne i) w Leacie ówi że w przydziale czasowo-yalny stron paięci operacyjnej i prograów do procesorów wyorzystje się wszystie stron a warne ii) że czasy pracy tych procesorów tóre wyonją jaieś progray są identyczne Zdefinijy fncję F ) oreśloną dla zbiorów dla tórych zachodzi ograniczenie i) dla ryteri yalizacji 3) Wartość tej fncji jest rozwiązanie następjącego ład równań: bi i a F ); : i i 5) ; 0 : : Wyorzystjąc Leat oraz 5) zadanie 3) przyjie ostatecznie następjącą postać: T in F ) 6) przy następjących ograniczeniach: i) ; s t s t ii) s t ; 75
753 eżeli jest rozwiązanie zadania 6) to gdzie: a F b i i i i : ; 0 : ; ) 7) jest rozwiązanie zadania 3) 3 Algoryt herystyczny Procesory wchodzące w sład wieloprocesorowego syste inforatycznego różnią się pod względe szybości wyonywania prograów Decydje o ty liczba stron paięci operacyjnej przydzielonych poszczególny procesoro Dlatego też -ty procesor będzie ty szybszy i więcej stron paięci operacyjnej zostanie przydzielonych Poniżej przedstawiony zostanie algoryt herystyczny tóry najpierw szeregje pro-gray na jednaowych procesorach tj taich do tórych przydzielona została jednaowa liczba dostępnych stron P Po ty szeregowani następje zróżnicowanie procesorów pod względe liczby przydzielonych i stron paięci operacyjnej i sprawdzenie czy srócony został czas zaończenia wyonywania wszystich prograów T Strony paięci operacyjnej przydzielone zostają do procesorów w następjący sposób: iarą szybości realizacji i-tego progra przez -ty procesor jest tzw współczynni podział stron paięci operacyjnej ; > załaday że procesore najszybszy jest procesor pierwszy a procesore najwolniejszy jest procesor -ty eżeli procesorowi najwolniejsze przydzieliy stron paięci operacyjnej to do pozostałych procesorów przydział tych stron będzie wyglądał następjąco: )] [ )] [ ) ) ) a wiadoo pojeność paięci operacyjnej wynosi stron a zate: 8) Rozwijając sę 8) oraz wprowadzając do niej paraetr otrzyjey:
) ) ) 9) Z zależności 9) wyliczay wartość dla -tego procesora czyli procesora najwolniejszego: [ ) 754 ] a zate procesorowi -te przydzieliy następjącą liczbę stron paięci operacyjnej: [ ) ] Pozostałe procesory otrzyją liczbę stron paięci operacyjnej oreśloną następjącą zależnością: 0) ) ) Przedstawiony powyżej sposób przydział stron paięci operacyjnej do procesorów wyorzystany zostanie w zaproponowany w niniejszej pracy algorytie herystyczny Kolejne roi algoryt herystycznego są następjące: Kro Oblicz czasy wyonywania prograów na poszczególnych procesorach b i T ) a i P dla zadanej wartości i i i losowo generowanych paraetrów a i b i Kro Uszeregj alejąco czasy wyonywania poszczególnych prograów i twórz listę L tych prograów Kro 3 Oblicz średni czas T śr wyonywania prograów przez ażdy z procesorów wg wzor: T śr n T ) i i ; i P Kro 4 Przydzielaj olejno najdłższe progray z listy L do olejnych procesorów od pierwszego poczynając) aż do oent gdy sa czasów wyonywania prograów przydzielonych olejny procesoro nie przeroczy czas T śr Przydzielone progray sń z listy L Kro 5 eżeli lista L się jeszcze nie wyczerpała to przydziel na przeian najrótszy progra z listy L do procesora tóry a najdłższy czas wyonywania prograów i najdłższy progra z listy L do procesora tóry a najrótszy czas wyonywania prograów je przydzielonych Usń te dwa ostatnio przydzielone progray z listy L Kro 6 eżeli lista L nie została jeszcze wyczerpana to wróć do Kro 5 W przeciwny wypad przejdź do Kro 7
Kro 7 Oblicz czas zaończenia wyonywania wszystich prograów T dla szeregowania prograów na procesorach tworzonego w Kroach 4 6 i dla Kro 8 Oblicz saryczne czasy wyonywania prograów szeregowanych na poszczególnych procesorach Kro 9 Dla zadanego współczynnia przydziel strony procesoro wyliczone z zależności 0) i ) P poszczególny Kro 0 Dla szeregowania prograów na procesorach tworzonego w Kroach 4 8 i dla liczby stron przydzielonych procesoro w Kro 9 oblicz czas zaończenia wyonywania wszystich prograów T Kro Powtórz Kro 9 i Kro 0 dla następnych sześci zwięszających się olejno wartości współczynnia Po zaończeni tych prób przejdź do Kro Kro Porównaj wartości czasów zaończenia wyonywania prograów T z olejnych prób i wybierz najrótszy z tych czasów Kro 3 Wyznacz dysretne liczby stron gdzie j j ˆ ) ) ) ˆ P wedłg zależności: ; ; oraz jest pertacją eleentów zbior P = {} taą że eżeli istnieją ) ) ) ) ) ) taie procesory tóry przydzielono zerowe liczby stron paięci operacyjnej to przydziel ażde z tych procesorów po jednej stronie pobierając je z olejnych procesorów poczynając od procesora tóre przydzielono najwięszą liczbę stron paięci operacyjnej 4 Wynii esperyentów obliczeniowych Przedstawiony w pracy algoryt herystyczny poddano ocenie dla siedi zwięszających się olejno wartości współczynnia podział stron paięci operacyjnej ze zbior {30 60 0} Paraetry a i b i charateryzjące i-ty progra i -ty procesor wylosowane zostały ze zbior {40 80 800} przez generator o jednostajny rozładzie prawdopodobieństwa Zadano liczbę prograów n = 30 60 90 0 50 i liczbę procesorów = 4 8 6 0 oraz liczbę stron paięci operacyjnej = 0000 Dla ażdej obinacji n i wygenerowano 30 instancji Rezltaty analizy porównawczej algo-ryt herystycznego przedstawionego w niniejszej pracy i znanego z literatry algoryt LPT przedstawione zostały w Tab 755
Tab Wynii analizy porównawczej algoryt herystycznego i algoryt LPT n/ Liczba instancji dla tórych: S S LPT LPT LPT LPT T T T T T T % se se 30/4 6 3 7 7 6 60/4 6 0 4 6 6 4 90/4 7 33 4 39 0/4 8 0 37 59 47 50/4 9 9 39 7 59 30/8 6 0 4 8 7 60/8 5 4 8 33 7 90/8 7 37 5 46 0/8 7 4 66 55 50/8 8 0 46 78 59 30/ 5 0 5 0 30 60/ 6 0 4 37 4 9 90/ 6 3 4 60 49 0/ 7 49 78 64 50/ 8 3 9 5 85 69 30/6 6 0 4 4 34 8 60/6 6 3 9 49 37 90/6 8 0 38 67 48 0/6 0 3 7 49 96 78 50/6 7 58 8 09 30/0 7 0 3 6 39 3 60/0 9 0 39 68 56 90/0 0 8 47 98 78 0/0 7 53 6 07 50/0 3 5 59 49 8 W Tab występją następjące wielości: liczba procesorów n liczba prograów T czas zaończenia wyonywania wszystich prograów ze zbior przy wyorzystani algoryt herystycznego LPT T czas zaończenia wyonywania wszystich prograów ze zbior przy wyorzystani algoryt LPT średnia procentowa poprawa czas T w stosn do czas T LPT T T wyrażona następjący wzore: 00% T średni czas obliczeń dla algoryt herystycznego S LPT średni czas obliczeń dla algoryt LPT S LPT 756
5 Uwagi ońcowe Przedstawione w poprzedni pncie pracy esperyenty obliczeniowe wyazały że efetywność szeregowania prograów na równoległych procesorach na bazie zaproponowanego w pracy algoryt herystycznego legła poprawie w stosn do szeregowania za poocą znanego z literatry algoryt LPT Kilprocentowa poprawa LPT czas T w stosn do T oże być zachętą do dalszych prac nad efetywnyi algorytai herystycznyi Zastosowanie przedstawionego algoryt herystycznego jest wsazane przede wszysti dla systeów o dżej liczbie prograów gdyż wówczas średnia procentowa poprawa jest najwięsza Zaproponowany w pracy algoryt oże słżyć zarówno do szeregowania prograów w wieloprocesorowych systeach erowych ja i do rozdział operacji na stanowisa prodcyjne wyposażone w odpowiednie aszyny w dysretny systeie prodcyjny Literatra Bianco L i in: Linear algoriths for preeptive schedling of ltiprocessor tass sbject to inial lateness Discrete Applied Matheatics 7 997 5-46 Błażewicz Dell Olo P Drozdowsi M Speranza M G: Schedling ltiprocessor tass on three dedicated processors Inforation Processing Letters 4 99 75-80 3 Błażewicz i in: Schedling in Cer and Manfactring Systes Springer- Verlag Berlin-eidelberg 993 4 Błażewicz i in: Schedling independent ltiprocessor tass before deadlines Discrete Applied Matheatics 65-3) 996 8-96 5 Błażewicz Li Z: Schedling ltiprocessor tass with chain constraints Eropean ornal of Operational Research 94 996 3-4 6 Boctor F F: A new and efficient heristic for schedling projects with resorces restrictions and ltiple exection odels Eropean ornal of Operational Research Vol 90 996 349-36 7 Brah SA Loo LL: eristics for schedling in a flow shop with ltiple processors Eropean ornal of Operational Research Vol 3 o 999 3-8 Cheng Karno Y Kise : A shifting bottlenec approach for a parallel-achine flow-shop schedling proble ornal of the Operational Research Society of apan Vol 44 o 00 40-56 9 Gpta D ariri AMA Potts C: Schedling a two-stage hybrid flow shop with parallel achines at the first stage Annals of Operations Research Vol 69 o 0 997 7-9 0 oogeveen A Lenstra K Veltan B: Preeptive schedling in a two-stage ltiprocessor flow shop in P-hard Eropean ornal of Operational Research Vol 89 o 996 7-75 ania A: Single achine schedling proble with a coon deadline and resorce dependent release dates Eropean ornal of Operational Research Vol 53 99 37-35 757
ania A Kovalyov M: Single achine schedling sbject to deadlines and resorces dependent processing ties Eropean ornal of Operational Research 996 Vol 94 84-9 3 ózefowsa i in: Discrete-continos schedling to iniize axi lateness Proceedings of the Forth International Syposi on Methods and Models in Atoation and Robotics MMAR 97 Międzyzdroje Poland 997 947-95 4 ózefowsa Węglarz : On a ethodology for discrete-continos schedling Eropean ornal of Operational Research Vol 07 998 338-353 5 ózefowsa i in: Local search etaheristics for discrete-continos schedling probles Eropean ornal of Operational Research 07 998 354-370 6 ózefowsa Mia M Różyci R Waligóra G Węglarz : Rozwiązywanie dysretno-ciągłych probleów rozdział zasobów przez dysretyzację zasob ciągłego Zeszyty aowe Politechnii Śląsiej r 474 seria Atoatya Gliwice 000 z 9-9 7 Kbale M Giaro K: Złożoność zwartego szeregowania zadań jednostowych w systeie otwarty przepływowy i ieszany Uczelniane Wydawnictwo aowo- Dydatyczne AG seria-atoatya półroczni to 5 zeszyt ½ Kraów 00 39-334 8 g CT i in: Grop schedling with controllable setp and processing ties: iniizing total weighted copletion tie Ann Oper Res 33 005 63-74 9 owici E Stnici C: The flow shop with parallel achines A tab search approach Eropean ornal of Operational Research 06 998 6-53 0 Węglarz : Mltiprocessor schedling with eory allocation - a deterinistic approach IEEE Trans C C-9 980 703-70 Bchalsi Z: An heristic soltion procedre to iniize the total processing tie of progras in ltiprocessing cer syste Inforation Systes Architectre and Technology ISAT 005 Oficyna Wydawnicza Politechnii Wrocławsiej Wrocław 005 0-6 Bchalsi Z: A Progra Schedling eristic Algorith in Mltiprocessing Cer Syste with Liited Meory Pages Polish ornal of Environental Stdies Vol 5 o 4C 006 6-9 3 Bchalsi Z: Miniising the Total Processing Tie for the Tass Schedling on the Parallel Machines Syste Proc of the th IEEE International Conference on Methods and Models in Atoation and Robotics Doe S Kaszyńsi R Eds) Międzyzdroje Poland MMAR 006 8-3 Agst 006 08-084 4 Bchalsi Z: An eristic Algorith for Solving the Schedling Proble in Mltiprocessing Cer Syste Polish ornal of Environental Stdies Vol 6 o 4A 007 44-48 Dr inż Zbigniew BUCALSKI Instytt Inforatyi Atoatyi i Robotyi Politechnia Wrocławsa 50-37 Wrocław aniszewsiego /7 tel: 0 7) 30 3 9 e-ail: zbigniewbchalsi@pwrwrocpl 758