Tosaajärjestemät Luento 9: Monprosessorjärjestemät Tna Nander Lu: Rea-Tme Systems uu 9 Ssätö Järjestemäma monprosessorone hajautettu järjestemä Päästä-päähän Tehtävän töden jao prosessoree Resurssen jaautumnen prosessoree Prosessoren vänen ommunont Tehtäven sjotteu prosessoree Monprosessoren prorteettatto (MPCP) Gobaa synronont Keseset ysymyset Töden sjotteu Resurssen hanta ja varaus Prosessoren yhtenen tateto P P : + on suortettavana osttan moemma prosessorea. Resurssa tarvtseva osa suortetaan ana resurssn anssa samassa paassa Järjestemäma Monprosessorone tuast ytetty (tghty couped) gobaa tateto saatava vähn ustannusn Hajautettu järjestemä öyhäst ytetty (oosey couped) gobaan tatedon saant on asta Tavanen PC on man annata monprosessorone CPU ja evy erset prosessort Järjestemäma Prosessort uan prosessora oma vuorotusmeansm, resurssen hanta ja synronont Prosessort ovat denttset, jos ne vodaan vahtaa esenään Kun prosessort evät oe denttset, vo tehtävän suortusaa vahdea sjotuspaan perusteea Prosessen vänen yhtestomnta töden vuorotusessa edeyttää gobaaa tatetoa Er menetemät tarvtsevat eraa tuota tetoa Menetemen vertau perustuu tarvttavan tedon määrään ja menetemän rppuvuuteen tedon saatavuudesta Päästä-päähän tehtävä Veraee usea prosessorea ja jaautuu usesn töhn, jota etjutettu (,5] (5,8] (8,] Esm. ennonvavonnassa uuden entooneen saapumnen ) retnasenta tutatedon perusteea (sgnaaprosessor) ) retttedon taennus dataprosessora 3) retttedon vertaamnen muhn taennettuhn rettehn (dataprosessor) (,4] (4,7]
Päästä-päähän tehtäven osatöden sjotteu prosessoree Mannetaan tehtävät teoreettsten ja sovetuven töden jaotteumaen avua Yhden tehtävät perääset työt suortetaan er prosessorea (man oetus) Vahtoehtoset mat Job shop: Töden vässä vahdetaan prosessora vapaast, järjestysestä rppumatta Fow shop: Kaen tehtävät noudattavat samaa prosessor järjestystä töden edetessä maa on äyttöä mm. sjotettaessa hmsä ja työtehtävä, tapaamsa ooushuonesn, tötä prosessoree jne. Ratasuagortmeja on useta erasa Yesessä tapausessa ratasu on NP-täydenen Yenen jaotteuongeman uvaus Syöte: suunnattu sytön vero G=(V,E), jona somut uvaavat tötä ja aaret nden suortusten perääsyyttä. Kaar (u,v) uvaa, että työn u ptää vamstua ennen työtä v. Ongema: Manen töden sjotteu ja ajotus suorttaa a uvatut tehtävät mnmoden (optmoden) joo prosessoren määrän ta äytettävän ajan? Töden uu paveupsteeä on rajotettu apasteett Työt suortetaan ys erraaan, seuraava saa aottaa vasta edesen vamstuttua Job shop yenen sjotteuma Parametrt: tehtävät (tass) j työt (jobs), tehtävän ssäsä prosessort (e,j, työn suortusen esto) Esmer: Työ Työ Työ 3 Tehtävä 5 6 - Tehtävä 7 Tehtävää on as työtä, jota suortetaan prosessorea 5 ja 6. Tehtävää on ome työtä, jota suortetaan vastaavast prosessorea,7 ja. Fow shop - ma Fow shop on job shop -maa rajotetump, osa Kaen tehtäven töden järjestys noudattaa samaa prosessorsevenssä. Töden suortusajat vovat vahdea, mutta prosessoren äyttöjärjestys e. Jos joan tehtävää e oe työtä tetye prosessore, se mannetaan noan mttasena suortusaana. Edetäjyysvaatmus on vastaava un job shop massa: työ - prosessora - on vams ennen un työ prosessora vo aaa. Tosaasuuden säyset Tehtävä on aarajoja Gobaa aotusaa (end-to-end reease tme) on ensmmäsen työn aotushet Gobaa taaraja (end-to-end deadne) on vmesen työn taaraja Väajoa e oe snänsä mertystä onnstumsee Tehtävät vovat oa jasosa Vahtoehtonen mannustapa Tarasteaan tanne e tehtäven vaan resurssen näövnestä (MPCP ma) P P : + vodaan suorttaa yhtenä tehtävänä, joa tarvtsee myös etäresursseja (ns. gobaa rttnen oso)
Maen erot: Päästä-päähän ma: Ys työ van yhdeä prosessora MPCP ma: Työ vo äyttää myös gobaaeja resursseja ns. gobaan rttsen oson autta. HUOM: työ e saa rttsen osonsa aana äyttää un yhden prosessorn oaaeja resursseja Ssätö Järjestemäma monprosessorone hajautettu järjestemä Päästä-päähän Tehtävän töden jao prosessoree Resurssen jaautumnen prosessoree Prosessoren vänen ommunont Tehtäven sjotteu prosessoree Monprosessornen prorteettatto (MPCP) Gobaa synronont Tehtäven sjotteu Peästään suortusaojen perusteea Loerontongema (Bn-pacng) Frst-Ft (ta RMFF, Rate-Monotonc-Frst-Ft) RMST (Rate-Monotonc Sma Tass) Huomodaan säs ommunontvpeet Integer Lnear Programmng Näden säs muaan resursspau Graph Parttonng Loerontongema Mten sjoteaan saadut paat mahdosmman taoudesest annettuhn oerohn? Loeron oo nteä vahteeva, rppuu esm. sjotettujen uumäärästä Mnmodaan tarvttaven oeroden määrä! Optmaanen ratasu on yesessä tapausessa NP-täydenen Hyvä heurstsa menetemä oemassa (mm. Frst- Ft) Frst-Ft Loerontongeman heurstnen ratasu Sjoteaan paat oerohn satunnasessa järjestysessä Kun paa atetaan ensmmäsen oeroon, johon se veä sop Jos paa e sov jo äytössä oevn oerohn, otetaan uus oero Tehtäven sjotteu prosessoree MPCP-ma Loeron oo on äyttöasteen masm uten ajotettavuusanayysssä Sjotetaven paoden oo on unn tehtävän tarvtsema äyttöaste Jos prosessoren määrä nteä m, nn Frst-ft öytää ana ajotusen van un sjotetaven töden yhteenasettu äyttöaste on orentaan U FF = m( / ) = 0. 44m 3
RMFF agortm Frst Ft muunnema Rate-monotonc ajotus prosessorea Käytetään oeron oon yärajana RM:n taraa yärajaa u + U n( / n ) Järjestetään työt jason ptuusen perusteea: Lyhmmät ensn Tämä on njassa RM:n prorsonnn muaan T 0 RMFF (p,e) u (,) 0.500 (.5,0.) 0.040 (3,) 0.333 (4,) 0.50 (4.5,0.) 0.0 (5,) 0.00 (6,) 0.67 (7,) 0.43 (8,) 0.5 (8.5,0.) 0.0 (9,) 0. Sjotteujärjestys on numerojärjestys P U = 0.500 <.000 U = 0.540 < 0.88 X U = 0.873 > 0.780 URM n( / n ) 0.693 määrä 3 4 5 6 7 U RM.000 0.88 0.780 0.757 0.743 0.735 0.79 T 0 RMFF (p,e) u (,) 0.500 (.5,0.) 0.040 (3,) 0.333 (4,) 0.50 (4.5,0.) 0.0 (5,) 0.00 (6,) 0.67 (7,) 0.43 (8,) 0.5 (8.5,0.) 0.0 (9,) 0. Jatetaan tehtävästä P U = 0.540 X U = 0.790 > 0.780 U = 0.56 < 0.780 X U = 0.76 > 0.757 P U = 0.333 <.000 U = 0.583 < 0.88 X U = 0.783 > 0.780 T 0 RMFF (p,e) u (,) 0.500 (.5,0.) 0.040 (3,) 0.333 (4,) 0.50 (4.5,0.) 0.0 (5,) 0.00 (6,) 0.67 (7,) 0.43 (8,) 0.5 (8.5,0.) 0.0 (9,) 0. Jatetaan tehtävästä P U = 0.56 U = 0.79 < 0.757 0 U = 0.74 < 0.743 P U = 0.583 U = 0.76 < 0.780 P3 U = 0.00 <.000 U = 0.35 < 0.88 U = 0.436 < 0.780 RMST agortm Rate-Monotonc Sma Tass (RMST) Hyödyntää RM:n äyttäytymstä harmoonsten jasojen anssa. Kun tehtäven jasojen ptuudet yhmmän monertoja, nn äyttöasteen masm asvaa merttäväst (jopa yöseen) Työt sjoteaan jasonptuudesta asetun arvon X määräämässä suuruusjärjestysessä X = og p og p RMST agortm Ajotettavuusehto prosessore on Työt ovat sjotetavssa m:e prosessore, jos työuormasta asettu äyttöaste on penemp un U RMST ( n, ζ n), mssä = max X mn X u + U max ζ ( m ) ( umax ) + n, un > = m mssä u max on töden suurn ysttänen äyttöaste 4
T 0 (p,e) (,) (.5,0.) (3,) (4,) (4.5,0.) (5,) (6,) (7,) (8,) (8.5,0.) (9,) RMST u X 0.500 0 0.040 0.3 0.333 0.585 0.50 0 0.0 0.70 0.00 0.3 0.67 0.585 0.43 0.807 0.5 0 0.0 0.087 0. 0.70 T 0 (p,e) (,) (4,) (8,) (8.5,0.) (4.5,0.) (9,) (.5,0.) (5,) (3,) (6,) (7,) u 0.500 0.50 0.5 0.0 0.0 0. 0.040 0.00 0.333 0.67 0.43 X 0 0 0 0.087 0.70 0.70 0.3 0.3 0.585 0.585 0.807 T 0 RMST (p,e) u X (,) 0.500 0 (4,) 0.50 0 (8,) 0.5 0 (8.5,0.) 0.0 0.087 (4.5,0.) 0.0 0.70 (9,) 0. 0.70 (.5,0.) 0.040 0.3 (5,) 0.00 0.3 (3,) 0.333 0.585 (6,) 0.67 0.585 (7,) 0.43 0.807 P U = 0.500 < U = 0.750 < U = 0.875 < 0 U = 0.887 < 0.940 X U = 0.909 > 0.88 T 0 RMST (p,e) u X (,) 0.500 0 (4,) 0.50 0 (8,) 0.5 0 (8.5,0.) 0.0 0.087 (4.5,0.) 0.0 0.70 (9,) 0. 0.70 (.5,0.) 0.040 0.3 (5,) 0.00 0.3 (3,) 0.333 0.585 (6,) 0.67 0.585 (7,) 0.43 0.807 P U = 0.887 0 U = 0.750 < P U = 0.0 < U = 0.33 < U = 0.73 < 0.895 U = 0.373 < 0.895 U = 0.706 < 0.7 P3 U = 0.67 < U = 0.30 < 0.846 RMFF: Esmeren vertau P (U= 0.74):,,,, 0 P (U=0.583):,, P3 (U=0.436):,, 0 RMST: P (U= 0.887):,,, 0 P (U=0.706):,,,, P3 (U=0.30):, Kommunontvpeet muaan Edeä tehtäven sjotteuun prosessorea vautt van tehtäven suortusaa Kommunont prosessorn ssää on merttäväst havempaa un prosessoren vää, joten tehtävät annattaa sjottaa sten, että prosessoren vänen ommunontustannus mnmodaan. Tavotteena ss osttaa tehtäven vero! Kommunontvpeet muaan 7 9 0 5 3 8 5 Veron ostuseen (ta oeammn muodostettaven osen västen ustannusten mnmontn) vodaan äyttää esm. Integer Lnear Programmng menetemää. 0 5
Ostus aavona Syötteet:,j =,...,n Tehtävän T äyttöaste u :nnen oson (prosessorn) masäyttöaste U Tehtäven T ja T j väset ustannuset C,j ommunontustannus jos er osohn,j nterferenssn ustannus, jos samaan osoon Muodostetaan 0/ matrs A, sten että A, on, jos T on sjottu :nteen osoon, muuten arvo on 0 (=,.., n ja =,...,m) Ostusen aavat jatuu Rajotteet (arvoe matrsssa): Satut arvot 0 ja A = 0, m Tehtävä van yhdessä osossa Oson äyttöaste satussa rajossa, =,.., n; =,.., m = A =,,.., n, = u A U,,.., m Mnmotava ustannusfunto n n m m Ctota = ( δ, j ) A, Aj, [ C, j ( δ, ) + ι, jδ, ], = j= = = mssä δ a, b n =, = =, un a = b ja 0, un a b Ssätö Järjestemäma monprosessorone hajautettu järjestemä Päästä-päähän Tehtävän töden jao prosessoree Resurssen jaautumnen prosessoree Prosessoren vänen ommunont Tehtäven sjotteu prosessoree Monprosessornen prorteettatto (MPCP) Gobaa synronont Paanen vuorotus Paasest prosessor vo huomoda gobaaen (täää sjatseven) resurssen äyttäjät Mutprosessor Prorty-Ceng Protoco (MPCP) Gobaaen resurssen äyttäjät (työt) sjotetaan omaan prorteettaueeseensa paasest suortettaven töden yäpuoee MPCP monprosessoren prorteettatto menetemä Resursspaun aheuttama estymsaa Paanen odotus (oca bocng tme) Paanen rrotusvve (oca preempton deay) syynä muuata tuut varaaja paasee resursse, oreamp pro Etäresurssn odotus (remote bocng tme) Etärrotusen vve (remote preempton tme) syynä tonen muuata tuut varaaja, joa oreamp prorteett un tseä Vvästetty odotus (deferred bocng tme) syynä paasen oreampprorteettsen oema odotus MPCP -esmer : [X;0.5][G;.0][G3;0.4]; e,l =.0 : [G;0.][G;0.5]; 4p = p 3 : [X;][G;.0][X;0.][G;.0][X;0.][X;0.] : [X;.0][X;.0][X;8.0][G3;0.7];.5p 4 =p 3 :[G3;0.6][G3;.0]; p 5 =.5p 3 :[G;5.0][G;0.3] :[G;.0] :n oonasvve a) Pa. od. 8 () b) Pa. rr. 5.3 (&) c) Etä od. *5 (&) d) Etä rr. 9 () e) Vv. od. () Yht : 49.3 (Kaavat rjassa s. 354-356) P P X G3 G G P3 6
Gobaa synronont Mten varmstutaan töden ja tehtäven oeasta ajottamsesta y prosessoren? Päästä- päähän massa seuraava työ saa aaa vasta edesen vamstuttua Vastaava rajotusa vo oa tehtäven vää myös MPCP-massa Prosessor saa ssäsest vuorottaa tehtävät hauamaaan tavaa Gobaa synronont Ahne synronoja (greedy synchronzaton) Synronontsgnaa edesen päätyttyä Vaheen muoaus (Phase-Modfcaton) Vvästetään seuraavaa edesen masmajaa Muunnettu vaheen muoaus Vvästetty aotusaa ja synronontsgnaa Myöhemmn saapunut määrä aotusheten Aotusen vartont (Reease Guard) Synronontsgnaa, mahdonen aotusaa jason ptuuden päässä edesestä ta un prosessor tuee vapaas (vrt. sporadnen paven) Prorteett osatöe? Päästä-päähän tehtävä on aotus- ja opetusajat seä prorteett Mten nämä ajat ja prorteett jaetaan osatehtäve? Mten jaetaan tehtävään T ssätyvä jousto osatöe T,? Deadne-assgnment Agorthms Deadne assgnment - vahtoehtoja Utmate Deadne (UD) UD = D, Effectve Deadne (ED) n( ) ED, = D e, = + Proportona Deadne (PD) PD D e / e, = Normazed Proportona Deadne (NPD) NPD,,,, = D n( ) = e, ( U V, e U( V ) ) Yhteenvetona Vattava ma vauttaa äytettävn menetemn ja oputa myös toteutetun järjestemän suortusyyyn Päästä-päähän mannus sop hyvn tanteeseen, jossa vähän mutta ptä rttsä aueta MPCP (rttnen suortus resurssn prosessora) sop tanteeseen, jossa pajon hyvn yhytä rttsä aueta 7