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

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: "Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben"— Előadás másolata:

1 Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben
Paljak Gergely Utolsó módosítás:

2 Tartalom Bevezetés Szabályozástechnikai alapok (ismétlés)
Jelek, modellek PID szabályzók Esettanulmány: AutoTune Esettanulmány: energiafelhasználás felügyelete Kutatási irányok Columbia egyetem előadásai alapján Megkülönböztető tudás

3 Szabályozási módszerek

4 Visszacsatolt rendszerek
A rendszer kimenetét részben vagy egészben a bemenetre csatoljuk A rendszer viselkedését befolyásoljuk Adaptivitást várunk Szabtech mint modellezési módszer, mire jó, hogyan

5 Visszacsatolt szabályozás mint megközelítés
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)
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
Visszacsatolt szabályozási kör, zavarjellel és zajjal Hellerstein, Diao, Parekh, Tilbury: Feedback Control of Computing Systems. Wiley (2004)

10 Visszacsatolt szabályozási kör
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 controller szabályozó plant szakasz reference input element alapjel adó comparing element különbségképző error detector hibajel detektáló compensator kompenzátor control task irányító szoftver blokk actuator végrehajtó transmitter távadó reference signal alapjel error signal hibajel action signal végrehajtó jel feddback signal ellenőrző (visszacsatolt) jel disturbance variable zavar jellemző manipulated variable módosító jellemző controlled variable szabályozott jellemző

11 A szabályozás céljai – SASO tulajdonságok
Stabilitás Stability Alapjelkövetés Accuracy – ess Beállási idő Settling time – ks Túllövés Overshoot - Mp

12 Mintavételes rendszerek

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

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

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

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

17 Z-Transzformáció: pólusok
Motiváció 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
Have class explain the chart

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 Why should the poles lie in the unit circle if we’re talking about a “final value”?

20 Jelek, rendszerek U(z) Y(z) G
U(z), Y(z) are signals – flow of data. G is the system such that when U(z) is applied, it results in an output signal Y(z). For eg, consider the discrete integrator. Shown are two example cases of inputs and resultant outputs. Can we generalize this in some way? It is possible (and also very useful) to represent G in the z domain. G(z) represents the the mathematical relationship between U(z) and Y(z). To be more precise, it is the function/operation performed by G on arbitrary signal U(z). By knowing U(z) and G(z) we can predict the resultant Y(z)  ie, we can predict the behavior of the system G.

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

22 Az átviteli függvények értelme
Adott bemenetre prediktálható a kimenet Kiszámítható, hogy stabilis-e a rendszer Nem stabil rendszerek nem kívánatosak Az erősítés kiszámítható (steady state gain) 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 Alacsonyabb fokú rendszerekkel könnyebb dolgozni Szimulálható a rendszer viselkedése Az átviteli függvények komponálhatók Bonyolult rendszereket is vizsgálhatók Predict output for a given input Predict Stability of system Unstable systems are highly undesirable Calculate steady-state gain Compute operating ranges, state space reachability Use it as a basis for lowering system order Lower-order systems are easier to work with Easily simulate the system behavior Compose TFs to build/study complex systems [Next Chapter]

23 Korlátos jelek Def:: {u(k)} korlátos, ha létezik M konstans, hogy |u(k)| = M minden k értékre. Intuitively, stable system should have a “reasonable” output behavior.

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ég y(k+1) = 1 P szabályozó y(k+1) = KP u(k) Összeadó y(k+1) = y(k) + u(k) I szabályozó y(k+1) = y(k) + KI u(k) M/M/1/K sor y(k+1) = 0.49y(k) u(k) Tetszőleges y(k+1) = -1.3y(k) + 2.3u(k) It is tedious to figure out whether or not something is BIBO stable from its time-domain eqn… leads to next slide. M/M/1/K = Arrival-Poisson process/service time distribution-Exponential service time/number of servers/The number of places in the system

25 GV stabilitás Tétel: G(z) rendszer GV stabilis akkor és csak akkor, ha minden pólusa az egységkörön belül van. Rendszer Időtartománybeli alak Átviteli függvény Pólusok Egység y(k+1) = 1 G(z) = 1 N/A P szabályozó y(k+1) = KP u(k) G(z) = KP Összeadó y(k+1) = y(k) + u(k) G(z) = 1/(z-1) z=1 I szabályozó y(k+1) = y(k) + KI u(k) G(z) = KI/(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

26 Blokkdiagramok

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

28 Szabályozott folyamat
Blokkdiagram alapok D(z) Szabályozott folyamat Szabályozó R(z) E(z) U(z) + V(z) Y(z) + K(z) G(z) - + W(z) H(z) Transzduktor Y(z) = G(z) V(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

29 Szabályozott folyamat
Komplex rendszerek D(z) Szabályozott folyamat Szabályozó R(z) E(z) U(z) + V(z) Y(z) + K(z) G(z) - + W(z) H(z) Transzduktor KI + KP +

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 E2(z) E1(z) R(z) U1(z) V(z) Y(z) K1(z) K2(z) U2(z)
G2(z) G1(z) + + - -

33 Kaszkád szabályozás példa
Kívánt válaszidő Mért válaszidő Kívánt kihasználtság Mért kihasználtság MaxClients E2(z) E1(z) Apache szabályozók V(z) R(z) U1(z) U2(z) Apache Server Y(z) K1(z) K2(z) G2(z) G1(z) + + - - Apache web szerver szolgáltatási szintjének szabályozása

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

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

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

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

38 Elosztott szabályozás
N R(z) E(z) U(z) K(z) G(z) Y(z) + - Centralizált szabályozás K1(z) R(z) U(z) N Y(z) E(z) G(z) K2(z) + - KN(z) Decentralizált szabályozás

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

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

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

42 Példa (folytatás) Két SISO szabályozó: C1 KA-t szabályozza, hogy elérje a CPU*-t C2 MC-t szabályozza, hogy elérje a MEM*-t - Apache Server Apache Server C1 + CPU*k ECPU,k KAk CPUk Szabályozó1 MEM*k EMEM,k MCk MEMk C2 Apache Server + - Szabályozó2 SISO: Single Input Single Output MIMO: Multiple Input Multiple Output

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 - C Apache Server + CPU*k ECPU,k KAk CPUk MEM*k EMEM,k MCk MEMk + - Szabályozó

44 Model struktúrák Az átviteli függvények kapcsolata G11 MIMO model G21
+ G11 S MIMO model G21 G12 G22 G11 SISO vs. MIMO G21 G12 G22 A SISO megközelítés a közös tagokat elhanyagol- hatónak tekinti + G11 KA CPU Two SISO models G22 MC MEM Apache Szerver

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

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 Time (s) MC KA

47 SISO Rendszeridentifikáció
KA CPU MEM MC G21 G12 G11 G22 + KA CPU MEM MC G21 G12 G11 G22 + MC=600 KA=11 CPU MEM KA MC Time (s) Time (s)

48 SISO modellek illeszkedésének vizsgálata
Egyszerre egy bemenet változik KA CPU MEM MC G21 G12 G11 G22 + KA CPU MEM MC G21 G12 G11 G22 + Prediktált Prediktált Valós Valós R2 = 0.934 R2 = 0.989

49 A SISO modellek értékelése mérések alapján
CPU MEM MC G21 G12 G11 G22 + KA CPU MEM MC G21 G12 G11 G22 + NEM NULLA! ~NULLA MC=600 KA=11 CPU MEM KA MC Time (s) Time (s)

50 Szabályozók típusai

51 Egyszerű szabályozók Egyszerű szabályozó: Bemenet: E(z) Kimenet: U(z)
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ő

52 Arányos tag 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ó Erősítés Kp E(z) U(z)

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

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

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 Pólusok vizsgálata KP=3.0 KP=0 KP=0.91 Gyökhelyek
- Az egyenlet megoldásai

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

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 Esettanulmány: AutoTune
Cloud computing rendszerek menedzsmentje Kihívások: Dinamikus terhelés Virtualizált környezetek Egy adatközpontot sok szolgáltatás vagy bérlő használ 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 MaxClients: max. párhuzamosan kiszolgált kliensek száma 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 Autotune Controller Bean
A felügyelt rendszertől lekérdezi a szolgáltatási szint metrikákat Beállítja a hangolt paramétereket Autotune Controller Bean Meghatározza a szabályozási algoritmusokat (a rögzített adatok alapján) 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: 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 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 Futásidejű szabályozás Éles rendszerben A szabályozó kimenete szerint állítja a MaxClients és a KeepAlive értékét

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

75 Visszacsatolt szabályozás
PID (proportional-integral-derivative) szabályozás Korrigálja a hibát a változók mért és kívánt értékei között 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 Kp érékkel kell megszorozni (erősítés) m: kimenet; Kp : 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 Ti: 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 Ti: 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 Mennyi idő alatt tér vissza a rendszer egy terhelésváltozás után Kp = arányos tag, erősítés Ki = integáló tag erősítése e= hiba az aktuális és a kívánt érték között a k-adik intervallumban Akkumulált hiba

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) q1=1, q2=2, q3=(1/10^2), q4=(1/2^2) (10% CPU, és 2% memória fluktuáció) 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 WAGON (Web trAffic GeneratOr and beNchmark) – Liu et al. (INRIA) Httperf generál HTTP lekérdezéseket Statikus és dinamikus terhelésmodellek Statikus: weboldal lekérések – a lekérdezések Poisson eloszlást követnek (20 session/sec) Dinamikus: weboldal lekérések – a lekérdezések Poisson eloszlást követnek (10 session/sec) Szabályozási paraméterek Szabályozási intervallum: 5 seconds 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:
Energiaköltség Hődisszipáció Két legfontosabb lehetőség a skálázásra: Működési frekvencia (négyzetes hatás) Tápfeszültség (köbös hatás) QoS követelmények és energiafelhasználás mérlegelése 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 Energia = hő; a hődisszipáció költséges Rendelkezésre álló elektromos ellátás korlátolt Jelentős költség a működés során Következmény A teljesítményt korlátozza a rendelkezésre álló energia Kevesebb csomópont/eszköz tud egyszerre működni Lehetőség: szűk keresztmetszetek Szűk keresztmetszetek korlátozzák a teljes rendszer teljesítményét 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: Jelentős fogyasztó(~100W), Ritkán szűk keresztmetszet Skálázható a teljesítménye (frekvencia és feszültség)

92 A CPU skálázás megoldás?
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 Alkalmazás áteresztőképessége Az áteresztőképesség csökkenés Feltételezések: A CPU jelentős energiafogyasztó A CPU szabályozható Az áteresztőképesség növekedése nem végig lineáris CPU power P = ½ CVf2 (1) power performance (freq) application throughput (2) performance (freq)

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

94 LMBench eredmények Frequency (Mhz) 2000 1.5 1 1800 1.4 2 1600 1.3 3
Benchmarking csomag Alacsony szintű Micro adatok Minden fokozat tesztelése Fokozat (Gear) Frequency (Mhz) Voltage 2000 1.5 1 1800 1.4 2 1600 1.3 3 1400 1.2 4 1200 1.1 6 800 0.9 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:
Egy rack energiafelhasználása Terem/villamos közmű Hődisszipáció korlátozásaiból. Statikus megoldás, a szerverek száma N = P/Pmax Ahol Pmax maximum energiafelhasználása egységenként Problémák Csúcs villamos teljesítmény > átlagos villamos teljesítmény (Pmax > Paverage) N * (Pmax - Paverage) kihasználatlan általában Alulteljesít – a számítási teljesítmény N-nel arányos 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 M > N Pl. M = P/Paverage MPmax > P Plimit = P/M Cél Használjuk több energiát, de maradjunk egy biztonsági határ alatt Csökkentsük az egyes csomópontok energiafelhasználását (és CPU csúcsteljesítményét) Növeljük a teljes rendszer számítási teljesítményét Pmax Pmax power power Paverage Paverage Plimit P(t) P(t) time time

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

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

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

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

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

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

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

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

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

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

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 A robosztus szabályozás változások ismert korlátait figyelembe veszi a szabályozás tervezése során Í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

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: 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

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 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 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 Az aktuális identifikációt a valós rendszernek tekinti, nem fogad el bizonytalanságot

115 MODEL IDENTIFICATION ADAPTIVE CONTROLLERS—MIAC

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 A referenciamodell statikus — adott vagy előre kiszámított, futásidőben nem változik MIAC megközelítés A referenciamodell változik futásidőben, identifikációs algoritmusokat futtat

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 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 Bizonyos jellemzők (pl. bizalom) számszerűsítése nehéz 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 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

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

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 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

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, 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, 4th 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)


Letölteni ppt "Szabályozástechnika alkalmazása az IT infrastruktúra felügyeletben"

Hasonló előadás


Google Hirdetések