Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben.

Hasonló előadás


Az előadások a következő témára: "Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben."— Előadás másolata:

1 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben Paljak Gergely

2 Tartalom  Bevezetés  Szabályozástechnikai alapok (ismétlés) o Jelek, modellek o PID szabályzók  Esettanulmány: AutoTune  Esettanulmány: energiafelhasználás felügyelete  Kutatási irányok

3 Szabályozási módszerek

4 Visszacsatolt rendszerek 4  A rendszer kimenetét részben vagy egészben a bemenetre csatoljuk  A rendszer viselkedését befolyásoljuk  Adaptivitást várunk

5 Visszacsatolt szabályozás mint megközelítés 5 Dobson, S. et al.: A Survey of Autonomic Communications. ACM Trans. on Autonomous and Adaptive Systems, 2006

6 A szabályozó egy autonóm egység (AE) 6 A szabályozó biztosíthat autonóm tulajdonságokat

7 Autonóm egységek hierarchiája IBM: An Architectural Blueprint for Autonomic Computing, 4th Ed. (2006)

8 Szabályozástechnikai ismétlés

9 Visszacsatolt szabályozási kör 9 Hellerstein, Diao, Parekh, Tilbury: Feedback Control of Computing Systems. Wiley (2004)

10 Visszacsatolt szabályozási kör 10 Alapjel – Reference input Cél, elvárt kimenet Hibajel – Control Error Az alapjelből ki kell vonni a (mért) kimenetet Beavatkozó/rendelkező jel – Control/Action Input A rendszert befolyásoló paraméterek, pl. a szálak száma, CPU, memória param. Zavarás – Disturbance Input A beavatkozó jelet befolyásolja – pl. érkezési ráta Zaj – Noise input A szabályozott jellemzőt befolyásolja Szabályozó - Controller Megváltoztatja a végrehajtó jelet, hogy elérje az alapjelet – a szabályozót a felügyelt rendszer modellje alapján kell tervezni Felügyelt rendszer – Managed system Dinamikus rendszer, folyamat (process, plant) — gyakran differenciálegyenletek írják le Szabályozott jellemző - Measured output A rendszer egy mérhető jellemzője —pl. válaszidő Transzduktor – Transducer A szabályozott jellemzőt transzformálja, hogy összemérhető legyen az alapjellel

11 A szabályozás céljai – SASO tulajdonságok  Stabilitás Stability  Alapjelkövetés Accuracy – e ss  Beállási idő Settling time – k s  Túllövés Overshoot - M p

12 Mintavételes rendszerek

13 Mintavételes szabályozási rendszerek  Irányítási rendszereket digitálisan valósítják meg o Real-time rendszerek Szabályozó: digitális szabályozó algoritmus Tartószerv Szabályozott szakasz Mintavevő alapjel diszkrét idejű szabályozott jellemző diszkrét idejű beavatkozó jel folytonos beavatkozó jel folytonos szabályozott jellemző

14 Z-transzformáció: Motiváció y Time (k) k y(k) A B C A B C

15 Z-Transzformáció z az eltolási operátor z 0 =1: k=0 (aktuális időpont) z -1 : k=1 (egy időegységgel előrébb a jövőben) z -2 : k=2 (két időegységgel előrébb a jövőben)

16 Z-Transzformáció: példa y Time (k) k y(k) A B C A B siettetés C késleltetés

17 Z-Transzformáció: pólusok  Motiváció o A jelek viselkedésének egy jelentős részét a nevező gyökei határozzák meg Karakterisztikus polinom A z-transzformált nevezője Pólusok A karakterisztikus polinom gyökei A pólusok lehetnek imagináriusok Oszcilláló viselkedést jelez Példa:

18 Minden, amit pólusokról tudni érdemes

19 Végérték tétel  A z-transzformációval egyszerűen meg lehet állapítani egy jel állandósult értékét (ha létezik)  Kiszámítható, hogy van-e állandósult hiba! Példa

20 Jelek, rendszerek G Y(z)U(z)

21 Átviteli függvények G(z) Y(z)U(z) Impulzusválasz: Lépésválasz: Definíció:Példa: diszkrét integrátor

22 Az átviteli függvények értelme  Adott bemenetre prediktálható a kimenet  Kiszámítható, hogy stabilis-e a rendszer o Nem stabil rendszerek nem kívánatosak  Az erősítés kiszámítható (steady state gain) o Működési tartományok, állapotok elérhetőségét lehet kiszámítani  Egyszerűsíteni, alacsonyabb fokúvá lehet tenni a rendszert o Alacsonyabb fokú rendszerekkel könnyebb dolgozni  Szimulálható a rendszer viselkedése  Az átviteli függvények komponálhatók o Bonyolult rendszereket is vizsgálhatók

23 23 Korlátos jelek Def:: {u(k)} korlátos, ha létezik M konstans, hogy |u(k)| = M minden k értékre.

24 GV stabilitás  Megjegyzés: nem korlátos jelekre adott nem korlátos válasz megengedhető!  Ezek a rendszerek GV stabilisak? Def.:Egy rendszer gerjesztés-válasz (GV) stabilis, ha bármely korlátos {u(k)} bemenetre az {y(k)} kimenet korlátos. (Bounded Input – Bounded Output, BIBO stable) Egységy(k+1) = 1 P szabályozóy(k+1) = K P u(k) Összeadóy(k+1) = y(k) + u(k) I szabályozóy(k+1) = y(k) + K I u(k) M/M/1/K sory(k+1) = 0.49y(k) u(k) Tetszőlegesy(k+1) = -1.3y(k) + 2.3u(k)

25 GV stabilitás RendszerIdőtartománybeli alakÁtviteli függvényPólusok Egység y(k+1) = 1G(z) = 1N/A P szabályozó y(k+1) = K P u(k)G(z) = K P N/A Összeadó y(k+1) = y(k) + u(k)G(z) = 1/(z-1)z=1 I szabályozó y(k+1) = y(k) + K I u(k)G(z) = K I /(z-1)z=1 M/M/1/K sor y(k+1) = 0.49y(k) u(k)G(z) = 0.033/(z-0.49)z = 0.49 Tetszőleges y(k+1) = -1.3y(k) + 2.3u(k)G(z) = 2.3/(z+1.3)z = -1.3 Tétel: G(z) rendszer GV stabilis akkor és csak akkor, ha minden pólusa az egységkörön belül van.

26 Blokkdiagramok

27  Sok komponensből álló rendszerek modellezése  Különbözik a flow chartoktól o Flow charts: work flow  rendszer (funkcionális) analízise o Blokkdiagram: jelfolyamok  szabályozás analízise  A SASO tulajdonságokat vizsgáljuk Szabályzó Notes Server Notes Sensor  

28 Blokkdiagram alapok K(z) G(z)   Szabályozó Szabályozott folyamat   D(z) Y(z)R(z) E(z) U(z)V(z) H(z) Transzduktor W(z)  Funkcionális blokk: a rendszer egy komponense  Nyilak: jelfolyam  Összegzési pont: jelek összeadása  Elágazási pont: egy jel több célhoz jut el Y(z) = G(z) V(z)

29 Komplex rendszerek K(z) G(z)   Szabályozó Szabályozott folyamat   D(z) Y(z)R(z) E(z) U(z)V(z) H(z) Transzduktor W(z) KIKI KPKP  

30 Zavarjel és zaj modellezése G(z) M/M/1/K Y(z) U(z) Válaszidő Buffer méret   V(z) Zavarjel D(z)   Zaj N(z) T(z) Alapjel és a szabályozó K(z) Szabályozó R(z) U(z) Buffer méret Alapjel

31 Szabályozási minták

32 Kaszkád szabályozás K 1 (z) R(z) K 2 (z) Y(z) U 1 (z)   E 2 (z)  E 1 (z)  G 2 (z) G 1 (z) U 2 (z) V(z)

33 Apache szabályozók Apache Server Kaszkád szabályozás példa K 1 (z) R(z) K 2 (z) Y(z) U 1 (z)   E 2 (z)  E 1 (z)  G 2 (z) G 1 (z) U 2 (z) V(z) Kívánt válaszidő Mért válaszidő MaxClients Mért kihasználtság Kívánt kihasználtság Apache web szerver szolgáltatási szintjének szabályozása

34 Adaptív szabályozás K(z) R(z) G(z) U(z) Y(z)  E(z)  A(z) Adaptációs séma

35 Adaptív szabályozás példa Notes Szenzor   Lotus Notes Server szabályozása Kívánt RIS Mért RIS MaxUsers Adaptációs séma Szabályozó Notes Szerver RIS = RPCs in System = lekérdezések száma a rendszerben RPC = Remote Procedure Call

36 Felügyeleti szabályozás K(z) R(z) G(z) U(z) Y(z)  E(z)  A(z) Felügyeleti logika Felügyeleti szabályozás = Supervisory control

37 Felügyeleti szabályozás példa Felhasználók Rendszergazda Szerver Alapjel MaxUsers Szerver Log Válaszidő Befejezett tranzakciók Szabályozó Szabályozó tervezés, alapjel meghatározás Profit model Rendszer identifikáció Felügyeleti logika Bevétel= r * (befejezett tranzakciók száma) Költség = c * (A W válaszidő kritériumnál hosszabb válaszidők száma) Profit = Bevétel - Költség

38 Elosztott szabályozás R(z) G(z) U(z) Y(z)  E(z)  K(z) R(z) G(z) U(z) Y(z)  E(z)  Centralizált szabályozás Decentralizált szabályozás K 1 (z) K 2 (z) K N (z) N N

39 Szabályozás tervezése Start Blokk-diagram tervezése Átviteli függvény identifikálása és validálása Szabályozó analízise Célok teljesültek? Szabályozó tervezés Y Stop Y Model Ok? N N Rendszermodellezés

40 Példa: Apache szabályozása New Users New conn Timeout() TCP Listen queue Close() + if ((QL > 0) && (idle_servers > 0)) then dequeue(); Apache User Think Idle Busy Connect Close Timeout request reply Szerver állapotátmenetek MaxClients Szabályozási cél: CPU és memória használat szabályozása  Apache session folyamok

41 41 Példa (folytatás)  A paraméterhangolás hatása MaxClients (MC) Memória kihasználtság (MEM) KeepAlive (KA) CPU kihasználtság (CPU) A KA hatásaAz MC hatása

42 Példa (folytatás) C1C1 CPU* k + - Szabályozó1 Apache Server MEM* k + - Szabályozó2 C2C2 Két SISO szabályozó: C 1 KA-t szabályozza, hogy elérje a CPU*-t C 2 MC-t szabályozza, hogy elérje a MEM*-t E CPU,k E MEM,k CPU k KA k MEM k MC k Apache Server Apache Server SISO: Single Input Single Output MIMO: Multiple Input Multiple Output

43 43 Példa (folytatás) Egy MIMO szabályozó: C szabályozza KA-t és MC-t, hogy elérje a CPU*-t és a MEM*-t CPU k CPU* k + - KA k Apache Server MEM k MEM* k + - MC k Szabályozó C E CPU,k E MEM,k

44 Model struktúrák Two SISO models KACPU MEMMC Az átviteli függvények kapcsolata G 11 G 22 Apache Szerver G 11  MIMO model G 21 G 12 G 22  G 11 SISO vs. MIMO G 21 G 12 G A SISO megközelítés a közös tagokat elhanyagol- hatónak tekinti

45 SISO Rendszeridentifikáció KA MC CPU MEM Apache Server Empirikus modellalkotás 1.A hangoló paramétereket változtassuk és folyamatosan gyűjtsünk adatokat 2.Lineáris regresszióval (legkisebb négyzetes hiba) elsőrendű modellt kaphatunk Time (s) CPU KA 12 Apache Server

46 Bemenő jelek kiválasztása A bemenő jeleknek megfelelő variabilitásúnak kell lennie, hogy a modell dinamikát azonosítani lehessen A bemenő jeleknek sűrű és egyenletes fedést kell adnia a bemeneti térre A diszkretizált szinusz alacsony és magas frekvenciákat is lefed a bemeneti térben KA MC KA Time (s)

47 SISO Rendszeridentifikáció MC=600 KA CPU MEMMC G 21 G 12 G 11 G Time (s) CPU KA KA=11 KA CPU MEMMC G 21 G 12 G 11 G Time (s) MEM MC

48 SISO modellek illeszkedésének vizsgálata Valós Prediktált Valós Prediktált R 2 = 0.934R 2 = Egyszerre egy bemenet változik KA CPU MEMMC G 21 G 12 G 11 G KA CPU MEMMC G 21 G 12 G 11 G

49 A SISO modellek értékelése mérések alapján MC=600 KA CPU MEMMC G 21 G 12 G 11 G ~NULLA KA=11 KA CPU MEMMC G 21 G 12 G 11 G Time (s) MC CPU Time (s) MEM KA NEM NULLA!

50 Szabályozók típusai

51 Egyszerű szabályozók Adott Folyamat t.f. G(z) Transzduktor t.f. H(z) Szabályozót.f. K(z) (T.f. = transzfer/átviteli függvény) Kiszámítandó Pólusok, erősítés Stabilitás, alapjel- követés, beállási idő Egyszerű szabályozó: Bemenet: E(z) Kimenet: U(z)

52 Arányos tag KpKp E(z) U(z) Erősítés A rendszer egy P szabályozóval stabilizálható A szabályozás lassú Az előírt fázistöbblet, illetve statikus hiba nem mindig biztosítható

53 Az P-tag pontossága Miért?

54 Megfigyelések: A P-szabályozás velejárója a pontatlanság! Nagy K P értékeket szeretnénk használni Az P-tag pontossága

55 P-tag stabilitása és beállási ideje Megfigyelés: Az három átviteli függvénynek ugyanazok a pólusai Emlékeztető Def: Karakterisztikus polinom A TF nevezője Def: Karakterisztikus egyenlet Karakterisztikus polinom = 0

56 Gyökhelyek - Az egyenlet megoldásai K P =3.0K P =0 K P =0.91 Pólusok vizsgálata

57 Integráló tag E(z) U(z) E(z) U(z) Vagy Célja: az állandósult hiba 0 legyen

58 Az integráló tag pontossága

59 I-tag stabilitása és beállási ideje

60 PI szabályozás

61 Az PI-tag pontossága Az integráló tag biztosítja a pontosságot a lépésválaszra!

62 PI-tag stabilitása és beállási ideje

63 PI pólusok, stabilitás, beállási idő (nincs szenzor holtidő)

64 PI pólusok, stabilitás, beállási idő (szenzor holtidővel)

65 Differenciáló tag Mindig P és I tagokkal együtt használandó! (Közelítő PD szabályozó realizálható) A változás trendjének előrejelzése A rendszer gyorsítására használható

66 PID szabályozás

67 Esettanulmány: AutoTune

68  Cloud computing rendszerek menedzsmentje  Kihívások: o Dinamikus terhelés o Virtualizált környezetek o Egy adatközpontot sok szolgáltatás vagy bérlő használ o Az egyes szolgáltatásoknak SLA-kat kell betartaniuk  Ha egy bérlő fizet egy Infrastructure-as-a-Service szolgáltatásért, hogyan biztosítható, hogy minél jobban kihasználja (de ne lépje túl) a kapacitást, amit megvásárolt?  Szabályozástechnika alkalmazása!

69 Kihívás: dinamikus terhelés  A CPU és memória kihasználtsági elvárásoknak megfelelni -> kézi finomhangolás  A MaxClients és KeepAlive paraméterek állíthatóak o MaxClients: max. párhuzamosan kiszolgált kliensek száma o KeepAlive: meddig tart nyitva egy kapcsolatot a szerver a kliensekkel  A dinamikus terhelés (dynamic workload) tipikusan nem előrejelezhető -> folyamatos újrahangolást igényel  A terhelés változásának követése egy állandó folyamat  AutoTune: szabályozó megoldás

70 AutoTune ágensek  Autotune Adaptor Bean o A felügyelt rendszertől lekérdezi a szolgáltatási szint metrikákat o Beállítja a hangolt paramétereket  Autotune Controller Bean o Meghatározza a szabályozási algoritmusokat (a rögzített adatok alapján) o A rendszermérnök számára interfészt ad a szabályozás beállítására, hangolására

71 AutoTune Functionality Beavatkozási és mintavételezési intervallumokat állítja

72 AutoTune architektúra

73 AutoTune ágens műveletek  Három ágens: o Visszacsatolt szabályozás tervezése Modellalapú szabályozás Linear Quadratic Regulation (LQR) szabályozás – Komplexebb szabályozástervezés, nem témája a jelen előadásnak o Modellezés Nem éles rendszeren, tesztelés során A MaxClients és KeepAlive paraméterek állítása A CPU és memória kihasználtság monitorozása Dinamikus modell építse az idősorok alapján o Futásidejű szabályozás Éles rendszerben A szabályozó kimenete szerint állítja a MaxClients és a KeepAlive értékét

74  A rendszer matematikai modelljét hozza létre o Sorbanállás elmélet o Mért adatok vizsgálata  Matematikai modell o A szerver belső működésének ismeretét igényli o A szerver sajátosságait ismerni kell  Mérések alapján épített modell (fekete doboz modell) o Adatgyűjtés éles rendszerekből o Feltételezzük, hogy megfelelően lefedjük az állapotteret  Felhasználói input o A hangolt paraméterek értéktartománya: MaxClient [1,1024]; KeepAlive [1,50] o Max. késleltetés, amíg az új paraméterek érvényre jutnak és látszanak a metrikákon: MaxClients (10m); KeepAlive (20m) Modellező ágens Lineáris Modell

75 Visszacsatolt szabályozás  PID (proportional-integral-derivative) szabályozás o Korrigálja a hibát a változók mért és kívánt értékei között o Kiszámítja a szükséges korrekciót és ennek megfelelően beavatkozik a folyamatba

76 Visszacsatolt szabályozás  Arányos - Proportional: reakció az aktuális hibára  Integráló - Integral: reakció a legutóbbi hibák alapján  Differenciáló - Derivative: reakció a hiba megváltozásának mértékére  A három módszer súlyozott összegét használjuk  A korrekciót (corrective action) egy beavatkozó hajtja végre

77 Arányos tag  A mért hibával arányos mértékben hajt végre változtatást  A hibát egy konstans K p érékkel kell megszorozni (erősítés) m: kimenet; K p : erősítés e: hiba (elvárt – mért) PB: arányos tartomány (proportional band)

78 Integráló tag  A szabályozó kimenet arányos a hiba mértékéhez és időtartamához  Az akkumulált arányos eltérést számolja ki az idő szerint  A szabályozó hamarabb éri el az elvárt értéket, de túllövést eredményezhet m: kimenet T i : időtartam e: hiba (elvárt – mért)

79 Differenciáló tag  A hibajel meredekségét használja ki (a hiba változásának sebessége) m: kiement T i : idő e: hiba (elvárt – mért)

80 PID szabályozás  Output(t) = P + I + D

81 Run-time Control Agent  Visszacsatolt szabályozást valósít meg  A kívánt és a mért kihasználtság értékeket használja  A Kp és Ki mátrixokat a szabályozás tervező ágens számítja ki  Szabályozó teljesítménye o Mennyi idő alatt tér vissza a rendszer egy terhelésváltozás után e= hiba az aktuális és a kívánt érték között a k-adik intervallumban Akkumulált hiba Kp = arányos tag, erősítés Ki = integáló tag erősítése

82 Szabályozás tervező ágens  A modellező ágens kimenetét használja  A J(Kp,Ki) négyzetes költségfüggvényt minimalizálja  Q, R súlymátrixok : Q 2x2-es mátrix ; R 4x4-es mátrix  Tapasztalati értékek: Q = diag(q1,q2,q3,q4), and R=diag(r1,r2) o q1=1, q2=2, q3=(1/10^2), q4=(1/2^2) (10% CPU, és 2% memória fluktuáció) o r1=(1/50^2), r2=(1/1000^2)

83 AutoTune architektúra

84 Kísérleti környezet  Linux, Apache HTTP szerver  MaxClient és KeepAlive paraméterek dinamikusan változtathatóak  Sok kliens viselkedését emuláló terhelésgenerátorok o WAGON (Web trAffic GeneratOr and beNchmark) – Liu et al. (INRIA) o Httperf generál HTTP lekérdezéseket  Statikus és dinamikus terhelésmodellek o Statikus: weboldal lekérések – a lekérdezések Poisson eloszlást követnek (20 session/sec) o Dinamikus: weboldal lekérések – a lekérdezések Poisson eloszlást követnek (10 session/sec)  Szabályozási paraméterek o Szabályozási intervallum: 5 seconds o Cél: CPU=0.5 és memória=0.6

85 Statikus terhelés – konvergencia 50 intervallum alatt

86 Megegyező beállítások + dinamikus terhelés a 20. intervallumtól kezdve

87 Esettanulmány: energiafelhasználás felügyelete

88 Követelmények  Az energiafelhasználás egy fontos tervezési kényszer: o Energiaköltség o Hődisszipáció  Két legfontosabb lehetőség a skálázásra: o Működési frekvencia (négyzetes hatás) o Tápfeszültség (köbös hatás)  QoS követelmények és energiafelhasználás mérlegelése o A terhelés mekkora részét dolgozzuk fel helyben

89 Forrás: Salim Hariri, Mazin Yousif

90 Justin Moore, Ratnesh Sharma, Rocky Shih, Jeff Chase, Chandrakant Patel, Partha Ranganathan (HP Labs)

91 High Performance Computing energiafelhasználása  Az energiafelhasználás kritikus kérdés o Energia = hő; a hődisszipáció költséges o Rendelkezésre álló elektromos ellátás korlátolt o Jelentős költség a működés során  Következmény o A teljesítményt korlátozza a rendelkezésre álló energia o Kevesebb csomópont/eszköz tud egyszerre működni  Lehetőség: szűk keresztmetszetek o Szűk keresztmetszetek korlátozzák a teljes rendszer teljesítményét o Csökkentsük néhány, nem szűk keresztmetszet energiafelhasználást, és így nem csökken a rendszer teljesítménye  Ma egy CPU: o Jelentős fogyasztó(~100W), o Ritkán szűk keresztmetszet o Skálázható a teljesítménye (frekvencia és feszültség)

92 A CPU skálázás megoldás? 1.Frekvencia és feszültség skálázása A villamos teljesítmény csökkenés kisebb mértékű, mint a számítási teljesítmény csökkenése 2.Alkalmazás áteresztőképessége Az áteresztőképesség csökkenés kisebb mértékű, mint a számítási teljesítmény csökkenése  Feltételezések: o A CPU jelentős energiafogyasztó o A CPU szabályozható o Az áteresztőképesség növekedése nem végig lineáris performance (freq) power application throughput performance (freq) (1) (2) CPU power P = ½ CVf 2

93 AMD Athlon-64  x86 ISA  64-bit technológia  Hypertransport technológia – gyors memória busz  Teljesítmény o SPEC2K eredmények 2GHz AMD-64 hasonló a 2.8GHz P4-hez a P4 átlagosan 10-30%-kal jobb (INT & FP) o Alacsonyabb órajel o Rövidebb pipeline (12 vs. 20)  Frekvencia és feszültség skálázás o 2000 – 800 MHz o 1.5 – 1.1 Volt From: Vincent W. Freeh (NCSU)

94 LMBench eredmények  LMBench o Benchmarking csomag o Alacsony szintű o Micro adatok  Minden fokozat tesztelése Fokozat (Gear) Frequency (Mhz) Voltage From: Vincent W. Freeh (NCSU)

95 Operációs rendszer funkciók From: Vincent W. Freeh (NCSU)

96 Kommunikáció From: Vincent W. Freeh (NCSU)

97 A probléma  Villamos csúcsteljesítmény korlát, P, adódhat: o Egy rack energiafelhasználása o Terem/villamos közmű o Hődisszipáció korlátozásaiból.  Statikus megoldás, a szerverek száma o N = P/P max o Ahol P max maximum energiafelhasználása egységenként  Problémák o Csúcs villamos teljesítmény > átlagos villamos teljesítmény (P max > P average ) o N * (P max - P average ) kihasználatlan általában o Alulteljesít – a számítási teljesítmény N-nel arányos o Az energiafelhasználás nem prediktálható

98 Biztonságos tartalékképzés  Felügyeljük az energia megosztást M > N csomópont között o M > N Pl. M = P/P average o MP max > P o P limit = P/M  Cél o Használjuk több energiát, de maradjunk egy biztonsági határ alatt o Csökkentsük az egyes csomópontok energiafelhasználását (és CPU csúcsteljesítményét) o Növeljük a teljes rendszer számítási teljesítményét time power P max P average P(t) time power P limit P average P(t) P max

99 Túltervezés  Előnyök o Kevesebb kihasználatlan energia o Hatékonyabb energiafelhasználás  Nagyobb számítási teljesítmény ugyanolyan energiakorlátok között o Legyen P (performance) a számítási teljesítmény o Nagyobb számítási teljesítmény másképpen: M P * > N P o P * / P > N/M vagy P * / P > P limit /P max time power P max P average P(t) time power P limit P average P(t) P max kihasználatlan energia

100 Mikor oldottuk meg a feladatot?  Ha P * / P > N/M vagy P * / P > P limit /P max Másképpen: a villamos energiafelhasználás csökkenése nagyobb, mint a számítási teljesítmény csökkenése performance (freq) power application throughput P * / P < P average /P max P * / P > P average /P max performance (freq) (1) (2) Vincent W. Freeh (NCSU)

101 Visszacsatolás-alapú, adaptív teljesítmény szabályozás  Visszacsatolással szabályozzuk az energiafelhasználást o Adott az energiafelhasználás kívánt értéke o Monitorozzuk az aktuális felhasználást o A CPU beállításait szabályozzuk  Több cél o Átlagos energiafelhasználás o Maximális energiafelhasználás o Energia hatékonyság: legyen g a leglassabb eszköz, hogy Vincent W. Freeh (NCSU)

102 Justin Moore, Ratnesh Sharma, Rocky Shih, Jeff Chase, Chandrakant Patel, Partha Ranganathan (HP Labs) CRAC = Computer Room Air Conditioner

103 Justin Moore, Ratnesh Sharma, Rocky Shih, Jeff Chase, Chandrakant Patel, Partha Ranganathan (HP Labs)

104 CRAC = Computer Room Air Conditioner

105 Justin Moore, Ratnesh Sharma, Rocky Shih, Jeff Chase, Chandrakant Patel, Partha Ranganathan (HP Labs)

106

107

108

109 Kutatási irányok

110 Adaptív szabályozás  A szabályozási algoritmus módosítása futásidőben, hogy kövesse a rendszer változását  A robosztus szabályozástól abban különbözik, hogy nincs szükség előzetes információra a lehetséges változásokról o A robosztus szabályozás változások ismert korlátait figyelembe veszi a szabályozás tervezése során o Így, ha a változások a korlátok közé esnek, nincs szükség a szabályozás módosítására 110

111 Rendszeridentifikáció  Matematikai eszközök, algoritmusok arra, hogy mért adatokból dinamikus modelleket építsünk  Egy dinamikus modell a rendszer viselkedését írja le az idő vagy frekvenciatartományban  Legfontosabb kutatás, alkalmazási területek: 111 Fizika Informatika Mérnöki tudományok Közgazdaságtan Biológia Kémia Gyógyászat

112 Modell-alapú adaptív szabályozás  Model Reference Adaptive Controllers (MRAC), vagy Model Reference Adaptive System (MRAS)  Visszacsatolt szabályozás, amely paraméterezhető, így követni tudja a szabályozott rendszer megváltozásait  A valós rendszer kimenetét egy referenciamodell (pl. szimulált modell) kimenetéhez viszonyítjuk  A szabályozás paramétereit ezen modellhiba alapján módosítjuk  A cél, hogy paraméterek konvergáljanak olyan ideális értékekhez, amelyek esetén a szabályozott rendszer válasza megegyezik a modell válaszával 112

113 MODEL REFERENCE ADAPTIVE CONTROLLERS—MRAC

114 MODEL IDENTIFICATION ADAPTIVE CONTROLLERS—MIAC  A rendszer identifikációját futásidőben végzi és módosítja a szabályozási algoritmust o Modellstruktúra létrehozása és paraméterbecslés tipikusan a legkisebb négyzetek módszerével  Cautious adaptive controllers – óvatos adaptív szabályozók o Az aktuális rendszer identifikáció alapján módosítja a szabályozást, megengedi a bizonytalanságot az identifikációban  Certainty equivalent adaptive controllers – biztosan ekvivalens adaptív szabályozók o Az aktuális identifikációt a valós rendszernek tekinti, nem fogad el bizonytalanságot 114

115 MODEL IDENTIFICATION ADAPTIVE CONTROLLERS—MIAC 115

116 MIAC és MRAC architektúrák alkalmazása  Mindkettő célja, hogy a szabályozón belül módosítsa a szabályozás algoritmusát  MRAC megközelítés o A referenciamodell statikus — adott vagy előre kiszámított, futásidőben nem változik  MIAC megközelítés o A referenciamodell változik futásidőben, identifikációs algoritmusokat futtat 116

117 Kutatási kihívások: modellezés  Szabályozástervezés során olyan modelleket kell alkotni, amelyekkel számszerűsíteni lehet a szabályozás hatását a mérhető kimeneteken o A teljesítménytervezés a sorbanállás elmélet sok alkalmazásra létrehozott modelleket, de nem biztos, hogy QoS jellemzőknek is megfelelő indikátorok o Bizonyos jellemzők (pl. bizalom) számszerűsítése nehéz o Milyen rendszerszintű, end-to-end és lokális QoS indikátorok relevánsak a felhasználó élménye szempontjából?  A modelleknek kompromisszumok (trade-off) tervezésére is lehetőséget kell adniuk, QoS indikátorok kombinációi alapján  QoS indikátorok visszacsatolása alapú szabályozása kihívás sok alkalmazási területen o A modellek és a QoS metrikák governance-hez, compliance-hez vagy egyed SLA- khoz kötődnek, különösen SOA rendszerek esetén

118 Kutatási kihívások: a bizonytalanság kezelése  Amik külső zavarásokat modellezünk (pl. hálózat telítődése) vagy kényszereket kell kielégíteni (pl. kompromisszumok extra-funkcionális követelmények között), bizonytalanságot vezetünk be  Ezért az ilyen dinamikus rendszereknek kezelniük kell ezt a bizonytalanságot, és a rendszernek alkalmazkodnia kell olya környezeti változásokhoz, amelyek nem volt előreláthatóak tervezési időben  A bizonytalanság bevezetés kompromisszumokat von maga után a rugalmasság a biztosítottan jó működösé között  A megfelelőséget folyamatosan ellenőrizni kell futásidőben, nem csupán egyszer, amikor elfogadtuk a rendszertervet  A változó, adaptív rendszerek alapvető feltétele, hogy kezelni tudják a bizonytalanságot és megbízhatósági garanciákat tudjanak adni 118

119 Kutatási kihívások: szoftver evolúció  Várható változások a közeljövőben:  A szoftverrendszerek kiterjesztése felügyeleti interfészekkel (szenzor, beavatkozó, vö. autonóm egység)  A reverse engineering és transzformációs technológiák segítségével (pl. modell alapú refaktoring) instrumentáció, módosítás  Szoftverrendszerek monitorozása majd szabályozása futásidőben, eddig elképzelhetetlen intelligens, autonóm működéssel 119

120 Összefoglalás  A informatikai rendszerek összekapcsolt, dinamikus hálózatokká válnak  Ahhoz hogy ilyen komplex, folyamatosan változó dinamikus rendszereket felügyelni lehessen, jóval nagyobb mértékű és pontosabb monitorozás szükséges  Az időben változó rendszerek felügyelet szabályozási körökkel o Explicit szabályozás  Előre látható és előre nem látható változások adaptív kezelése  Mindenre kiterjedő, alapos instrumentáció a rendszerek minden építőelemében  Karbantarthatósági és evolúciós előnyei is vannak az ön-adaptív rendszereknek a statikus, nem adaptívakhoz képest 120

121 Felhasznált és ajánlott irodalom  Hellerstein, J.L., Diao, Y., Parekh, S., Tilbury, D.M.: Feedback Control of Computing Systems. John Wiley & Sons (2004)  Joseph L. Hellerstein Yixin Diao, Sujay Parekh, Feedback Control of Computing Systems, Columbia University, https://courseworks.columbia.edu/cms/outview/courseenter.cfm?no=COMSE6998_004_2004_1 https://courseworks.columbia.edu/cms/outview/courseenter.cfm?no=COMSE6998_004_2004_1  IBM Research, Feedback Control of Computing Systems,  Northrop, L., et al.: Ultra-Large-Scale Systems. The Software Challenge of the Future. SEI Tech Report, 134 pages, ISBN (2006)  Lewis, G., Smith, D.: SOA and its Implications for Maintenance and Evolution, ICSM FoSM (2008)  IBM: An Architectural Blueprint for Autonomic Computing, 4 th Ed. (2006)  Huebscher, M.C., McCann, J.A.: A Survey of Autonomic Computing—Degrees, Models, and Applications. ACM Computing Surveys, 40 (3):7:1-28 (2008)  Dobson, S., Denazis, S., Fernandez, A., Gaiti, D., Gelenbe, E., Massacci, F., Nixon, P., Saffre, F., Schmidt, N., Zambonelli, F.: A Survey of Autonomic Comm.. ACM TAAS 1(2): (2006)  Diao, Y., Hellerstein, J.L., Parekh, S., Griffith, R., Kaiser, G.E., Phung, D.: A Control Theory Foundation for Self- Managing Computing Systems. IEEE Journal on Selected Areas in Communications 23(12): (2005)  Müller, H.A., Pezzè, M., Shaw, M.: Visibility of Control in Adaptive System. In: 3rd ACM/IEEE International ICSE ULSSIS 2008, pp (2008)  Müller, H.A., Kienle, H.M., Stege, U.: Autonomic Computing: Now You See It, Now You Don’t—Design and Evolution of Autonomic Software Systems. In: De Lucia, A., Ferrucci, F. (eds.): In ISSL, LNCS 5413, pp. 32–54 (2009)  Brun, Y., Di Marzo Serugendo, J., Gacek, C., Giese, H., Kienle, H.M., Litoiu, M., Müller, H.A., Pezzè, M., Shaw, M.: Engineering Self-Adaptive Systems through Feedback Loops, In: Software Engineering for Self-Adaptive Systems, LNCS 5527, pp (2009) 121


Letölteni ppt "Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben."

Hasonló előadás


Google Hirdetések