12. zatvorene mreže (definicija)rti.etf.bg.ac.rs/rti/prs/materijali/prs10.pdf · 12. zatvorene...
TRANSCRIPT
12. Zatvorene mreže (definicija)
. Zatvorena mreža : Mreža u kojoj je broj poslova j j j j pkonstantan
n =const - stepen multiprogramiranjaKoliko poslova uđe u mrežu, toliko istovremeno i izađe (kada se jedan zahtev opsluži, on napuštamrežu i umesto njega dolazi drugi posao ⇒ n = const.)
O ž ji l i k i B j l j
Tri načina za modeliranje zatvorenih mreža:
Otvorena mreža: postoji ulazni tok procesa u sistem. Broj poslova je promenljiv, ali tok procesa je konstantan u proseku.
1. Ciklični model multiprogramiranja (CMMP)2. Stohastički model mreže sa centralnim serverom (MCS)3. Opsti model multiprogramiranja
ETF-Beograd Performanse Računarskih Sistema
1
12. Zatvorene mreže (definicija)
Pojedinačni servisni centar u zatvorenoj mreži može da bude:Pojedinačni servisni centar u zatvorenoj mreži može da bude:• jedan par: red za čekanje-server
• ekvivalentni paralelni serveri
• neekvivalentani paralelni serveri
ETF-Beograd Performanse Računarskih Sistema
2
12. Zatvorene mreže (definicija)
P kiProcesorskipodsistem
U/Ipodsistem (fajlovi)
Model opterećenja: FOR I:=1 to NtrRead (disk, 1 pristup) n ovakvih poslovaCompute (m instrukcija)Compute (m instrukcija)
ENDNtr – N transakcija
ETF-Beograd Performanse Računarskih Sistema
3
12.1 Ciklični model multiprogramiranja (CMMP)
. Pretpostavke:Pretpostavke:1. stepen multiprogramiranja je konstantan (broj zahteva je nepromenljiv)2. vreme opsluživanja procesora ima eksponencijalnu raspodelu sa
parametrom μp μ3. vreme opsluživanja U/I podsistema ima eksponencijalnu raspodelu sa
parametrom λ4. svi poslovi su istog prioriteta
Prva varijanta CMMP
Procesorskiq0 – verovatnoća završetka Procesorski
Druga varijanta CMMP
Procesorskipodsistem
U/Ipodsistem
nekog posla
q1 q0 + q1 =1N poslova
podsistem
U/I
n poslovax
N·q0 = 1, q0 = 1/N
ETF-Beograd Performanse Računarskih Sistema
4
podsistempodsistem
12.1 Ciklični model multiprogramiranja (CMMP)
CPU d i tDogađaji su prelasci iz jednog podsistema u drugi do kojih
μ
μn-i
CPU podsistem dolazi po završetku servisiranja na nekom serveru.Verovatnoća da se više događaja desi istovremeno je 0.Stanja karakterišemo trenutnim brojem procesa u jednom od Podsistema (npr. periferijskom). U stanju i imamo i procesa u
λ
λi periferijski podsistem(najčešće diskovi)
( p p j ) j ptom podsistemu.Stanja ima ukupno n+1, pi je verovatnoća i-tog stanja
p0+p1+...+pn = 1μ · pi = λ · pi+1 Balansna jednačinap0 p1 p2 pn μ pi λ pi+1 Balansna jednačina
i+1i
μ
n210
p0 p1 p2 pn
λ
λ, μ zavise od konkretnog stanja (zbirna brzina servera u datom stanju)λ=k·λi gde je k broj servera u periferijskom podsistemu koji rade u datom stanju
i d j b j k d i t k ji d d t t j
ETF-Beograd Performanse Računarskih Sistema
5
μ=m·μi gde je m broj servera u procesorskom podsistemu koji rade u datom stanju
12.1 Ciklični model multiprogramiranja (CMMP)
Algoritam analize cikličnog modela:1. Nacrtati dijagram stanja i ispisati balansne jednačine2 Izračunati sve verovatnoće stanja pi i=0 n2. Izračunati sve verovatnoće stanja pi, i=0,..,n3. Izračunati iskorišćenje servera (opslužilaca) U1, U2, ..., Uk.
Ui je zbir svih verovatnoća onih stanja u kojima server i radi (verovatnoća daposmatrani server radi)pos at a se e ad )
4. Odrediti odgovarajuće protoke: Xi=Ui/si (s je vreme servisiranja)
5. Srednji broj poslova u servisnom centruN
jJ j p= ⋅∑5. Srednji broj poslova u servisnom centru
6. Srednje vreme odziva pojedinih podsistema7. Srednje vreme čekanja u redu: Tq = T - s
1j
jj p
=∑
/T J X=
ETF-Beograd Performanse Računarskih Sistema
6ETF-Beograd Performanse Računarskih Sistema
6
7. Srednje vreme čekanja u redu: Tq T s
12.1 Ciklični model multiprogramiranja (CMMP)
PRIMER: Multiprogramski računar sa jednim procesorom i jednim diskom obavlja transakcionu obradu nad n istovetnih programa. Vreme pristupa disku i procesorska obrada po transakciji su jednaki i iznose po 20ms. Primenom cikličnog modela multiprogramiranja izvesti izraze za iskorišćenje procesora U(n) i intenzitet toka kroz sistem X(n) izraženog u transakcija u sekundi.
ETF-Beograd Performanse Računarskih Sistema
7ETF-Beograd Performanse Računarskih Sistema
7ETF-Beograd Performanse Računarskih Sistema
7
12.1 Ciklični model multiprogramiranja (CMMP)
i t t j d dProcesorDisk je besposlen i-to stanje podrazumeva da se u
disk-podsistemu nalazi i procesaλ
je besposlenDisk je besposlen
λλλ
0 1 n
μ μ
n-1...
μ μ
Balansne
0 1
1 2
p pp p
λ μλ μ
⋅ = ⋅⋅ = ⋅ Uvedemo
smenu:λρ =
μ μμ μ
jednačine:2 3
...p pλ μ
λ
⋅ = ⋅smenu: ρ
μ
ETF-Beograd Performanse Računarskih Sistema
8ETF-Beograd Performanse Računarskih Sistema
8
1n np pλ μ−⋅ = ⋅
12.1 Ciklični model multiprogramiranja (CMMP)
λ1 0 0
22 1 0
p p p
p p p
λ ρμλ ρμ
= = ⋅
= = ⋅01
1nUp p
n= − =
+
1 0
...
nn np p p
μ
λ ρμ −= = ⋅
1
1
( )1
( ) 1 50( ) sec
nnU n
nU n n nX n −
+
=+
= = =( )2
0 1 0
0 1
... 1 1 ... 1
1 ... 1/ ( 1)
nn
n
p p p p
p p p n
μ
ρ ρ ρ
ρ
+ + + = => ⋅ + + + + =
= => = = = = +
( ) sec1 20 1
X nS n ms n
= = ⋅ =+ +
Svako stanje u sistemu je jednako verovatno.
ETF-Beograd Performanse Računarskih Sistema
9ETF-Beograd Performanse Računarskih Sistema
9ETF-Beograd Performanse Računarskih Sistema
9
12.2 Stohastičko modelovanje mreže sa centralnim serverom(MsCS)
V1 - ukupan broj poseta procesoru 1 p j p p(centralnom serveru) od strane jednog procesa koji završi svoju obradu (dok izađe iz sistema, proces V1 puta poseti procesor).
V1· p1 = 1, V1 = 1 / p1
t t i b j
)Procesor je obeležen kao resurs sa rednim brojem 1.
n1 - trenutni broj procesa u procesoruVi - broj pristupa i-tom I/O uređaju od strane jednog procesaVi= pi· V1= 1· pi/p1,pi = Vi/V1 i=2,…,kpi Vi/V1, i 2,…,kp1+p2+…+pk = 1 1 / V1 + V2 /V1 + V3 /V1 + … + Vk/V1 = 1 Ako pomnožimo sve sa V1 :V2 + V3 +…+ Vk = V1 – 1 Ukupan broj poseta svim diskovima jednak je broju
ETF-Beograd Performanse Računarskih Sistema
10
poseta procesoru (centralnom serveru) umanjenom za jedan
12.2 Stohastičko modelovanje mreže sa centralnim serverom(MsCS)
Brzine pojedinačnih servera su μ1, μ2,..., μk (1/s1, 1/s2,..., 1/sk).
Uvodimo pojam potražnje za nekim serverom:xi - potražnja za i-tim serverom, neimenovani brojevi koji se
normalizuju i oslikavaju potražnju za serverima. Obično se x1 postavlja na 1 (referentni servisni centar), pa se u odnosu na p j ( ) pnjega normalizuju ostale potražnje.
Di - vreme koje jedan proces zateva od i-tog servera tokom svih opsluživanja zateva od strane tog servera – serversko vreme p j gili ukupna vremenska potražnja (demand) za serverom (jedan proces može da ima više zahteva za istim serverom i taj broj zateva smo obeležili sa Vi )
ETF-Beograd Performanse Računarskih Sistema
11
12.2 Stohastičko modelovanje mreže sa centralnim serverom(MsCS)
P i 1 Z j d k j di i i t b j 1 (5 3 i 4h )Primer 1: Za jednu vremensku jedinicu servisnog centra broj 1 (5 sec, 3 min, 4h... ) potrebno je x2 vremenskih jedinica servera 2, x3 vremenskih jedinica servera 3 itd
Primer 2: U sistemu postoje CPU, Disk1 i Disk2. p j ,Vremena servisiranja su redom: sCPU = 0.039ms, sd1 = 0.18ms, sd2 = 0.26msProcesi u proseku 20 puta pristupaju procesoru, 13 puta prvom i 6 puta drugom di k Uk i ht i i (d d ) idisku. Ukupni zahtevi za resursima (demands) iznose:DCPU = 20× 0.039ms = 0.78msDd1 = 13× 0.18 = 2.34Dd2 = 6× 0.26 = 1.56Dd2 6 0.26 1.56Skaliranjem sa 1/0.78ms dobijamox1=1x2=3
ETF-Beograd Performanse Računarskih Sistema
12
x3=2
12.2 Stohastičko modelovanje mreže sa centralnim serverom(MsCS)
Jednačina prelaza stanja za sistem sa slike:
p2·μ1·x1- μ2·x2 =0p3·μ1·x1 - μ3·x3 =0
. . . kk-1
x1 = 1 - normalizovana potražnja za procesorom
μi·xi= μ1·x1·pi - i-ta jednacina, i=2, 3, …, kx = μ p /μ i=2 3 k 1
pk·μ1·x1 - μk·xk =0-(1-p1)·μ1·x1 + μ2·x2 + μ3·x3 +. . .+ μk·xk =0
(poslednja jednačina je posledica
k xi= μ1·pi/μi , i=2, 3, …, k , x1 = 1 si =1/μi prosečno vreme opsluživanja
nekog uređaja, i=1,2, …,k
(poslednja jednačina je posledicaprethodnih)
ti – ukupno vreme za koje posaookupira i-ti uređaj
pi·si Vi·si ti D i
xi= —— = —— = — = —s V ·s t D
ETF-Beograd Performanse Računarskih Sistema
13
t1 – ukupno vreme opsluživanjajednog procesa od strane procesora
s1 V1·s1 t1 D1
12.3 Opšti model zatvorene mreže (Gordon-Njuelov metod)
. n1
1 matrica verovatnoća kretanjap11 . . . p1k k – servera,
nk
p p
... ...
k pk1 . . . pkk
n – poslova (ukupan broj poslova je const, zatvorena mreža)n je raspoređen na n1, n2,…, nk poslova pri čemu je :n1+n2+…+nk=n , p11- verovatnoća da se posle posete prvom opslužnomcentru vrati ponovo na njega (ekvivalentni su: p p )centru vrati ponovo na njega (ekvivalentni su: p22,…,pkk)pij - verovatnoća da se posle posete i-tom opslužnom
centru posao uputi j-tom opslužnom centrui=1, 2, …, k; j=1, 2, …, k
Stanje sistema je definisano trenutnim rasporedom poslova po servisnim centrima.Trenutno stanje sistema: S=(n1, n2,…, nk) , ni≥0 , i=1, 2, …, k . Broj različitih rasporeda stanja:
Ekvivalentni kombinatorni problemi:1 1
1n k n k
Ln k
+ − + −⎛ ⎞ ⎛ ⎞= =⎜ ⎟ ⎜ ⎟−⎝ ⎠ ⎝ ⎠
S(n,k)={(n1, n2,…, nk)⏐n1+n2+…+nk=n , ni ≥0}n broj poslova, k broj servera
1. Broj načina za smeštanje n kuglica u k kutija2. Broj načina za raspoređivanje k-1 pregrada (za k kutija) na
n+k-1 mesto3. Broj načina za predstavljanje broja n kao zbira k
ti i lih b j
1n k⎝ ⎠ ⎝ ⎠
ETF-Beograd Performanse Računarskih Sistema
14
nenegativnig celih brojeva
12.3 Opšti model zatvorene mreže (Gordon-Njuelov metod)
Gordon-Newell-ov metod za analizu zatvorene mreže
Neka je data zatvorena mreža opšteg tipa, sa konstantnih n procesa i k servera.Pretpostavljamo eksponencijalnu raspodelu vremena opsluživanja i FCFS disciplinuopsluživanjaopsluživanja. Brzine pojedinačnih servera su μ1, μ2,..., μk (1/s1, 1/s2,..., 1/sk).Imamo matricu verovatnoća pij koja određuje verovatnoće da se posle posete i-tomservisnom centru posao uputi u j-ti servisni centar, i=1, 2, …, k; j=1, 2, …, kp p j , , , , ; j , , ,
ni - broj poslova na i-tom serveru (ukupno n u zbiru)Svaki server ima određenu potražnju:xi - potražnja za i-tim serverom, neimenovani brojevi koji se normalizuju i oslikavaju
potražnju za serverima. Obično se x1 postavlja na 1 (referentni servisni centar), pa se u odnosu na njega normalizuju ostale potražnje.
.
ETF-BeogradPerformanse Računarskih
Sistema15
12.3 Opšti model zatvorene mreže (Gordon-Njuelov metod)
Gordon-Newell-ove
(1-p11)·μ1·x1 = p21·μ2·x2+. . .+ pk1·μk·xk(1-p22)·μ2·x2 = p12·μ1·x1 +. . .+ pk2·μk·xk
jednačine . . . (1-pkk)·μk·xk = p1k·μ1·x1+p2k·μ2·x2+ . . .
-(1-p11)·μ1·x1+ p21·μ2·x2+. . .+ pk1·μk·xk=0p12·μ1·x1-(1-p22)·μ2·x2 +. . .+ pk2·μk·xk=0
. . . p1k·μ1·x1+p2k·μ2·x2+ . . . -(1-pkk)·μk·xk=0
Drugi zapis:
Performanse Računarskih Sistema
16ETF-Beograd
Performanse Računarskih Sistema
16
12.3 Opšti model zatvorene mreže (Gordon-Njuelov metod)
N k j k t t j S( k) {( )⏐ + + + ≥0}Neka je ukupan prostor stanja s∈S(n,k)={(n1, n2,…, nk)⏐n1+n2+…+nk=n , ni ≥0} , Drugim rečima, S(n,k) je skup uređenih k-torki, takvih da je zbir svih članova svake k-torke n
Neka je p(s) raspodela verovatnoća stanja sistema. To je diskretna veličina koja određujeNeka je p(s) raspodela verovatnoća stanja sistema. To je diskretna veličina koja određuje
verovatnoću da se sistem nađe u svakom od stanja. 1 1 1n k n k
Ln k
+ − + −⎛ ⎞ ⎛ ⎞= =⎜ ⎟ ⎜ ⎟−⎝ ⎠ ⎝ ⎠
Stanje sistema u nekom trenutku, tj. raspored procesa po servisnim centrima može se opisatiproizvodom:
1 21 2 ...
kn n nk ni
k ix x x x⋅ ⋅ ⋅ = ∏Gordon i Newell su dokazali da će verovatnoća ovog stanja biti srazmerna ovom proizvodu.
1 21
k ii=∏
ETF-Beograd Performanse Računarskih Sistema
17
12.3 Opšti model zatvorene mreže (Gordon-Njuelov metod)
Pošto je verovatnoća svakog stanja srazmerna odgovarajućem proizvodu
ki∏
Pošto je verovatnoća svakog stanja srazmerna odgovarajućem proizvodu, verovatnoća svakog stanja se može odrediti kao odnos odgovarajućeg proizvoda i zbira proizvoda koji odgovaraju svim stanjima.
1( )
nii
ik
ni
xP s
x
==∏
∑ ∏ s S 1
( )k
nii
i
G n x∈ =
= ∑∏za svako stanje s iz 1skupa mogucih stanja S
ii
x=
∑ ∏
Suma u imeniocu se obično obeležava sa G(n) i predstavlja konstantu sistema koja obezbeđuje da je zbir svih verovatnoća jednak jedinici. Na ovaj način smo odredili raspodelu stanja sistema, p(s).
ETF-Beograd Performanse Računarskih Sistema
18ETF-Beograd Performanse Računarskih Sistema
18
12.3 Opšti model zatvorene mreže (Gordon-Njuelov metod)
(i ide od 2 zato sto je x1 =1)
Ako se potražnje normalizuju u odnosu na x1, tj. za x1=1 dobija se:
21 2( ) ( )
kni
i knii
k
xp n n n G n x== =
∏∑ ∏ (i ide od 2 zato sto je x1 1)
Uj - iskorišćenje j-tog opslužioca se analogno računa:
1 2( , ) 2
( , ,..., ) , ( )( )k i
s S n k i
p n n n G n xG n ∈ =
∑ ∏
Uj iskorišćenje j tog opslužioca se analogno računa:
0 2( ) ( )
kni
i knj i ni
xU p n n n G n x> == = =
∑∏∑ ∑ ∏1 2
0 ( , ) 2
( , ,..., ) , ( )( )j k i
nj s S n k i
U p n n n G n xG n> ∈ =
= = =∑ ∑ ∏
Performanse Računarskih Sistema
19ETF-Beograd
Performanse Računarskih Sistema
19
12.4 Bjuzenov algoritam za izračunavanje G(n)
Problem kod Gordon-Njuelovog metoda je velika složenost računanja konstante G(n), jer je za
to potrebno izračunati sumu proizvoda. 1
n k
n+ −⎛ ⎞
⎜ ⎟⎝ ⎠
Pored dugog trajanja, to može i da izazove problem greške u zaokruživanju. Bjuzen uvodi ( , )
1 21
( ) , n ... .i
s S n k
kni k
iG n x n n n const
∈ =
= + + + = =∑ ∏g g j j , p g j j
pomoćnu funkciju g(i,j), gde je i broj zahteva, a j broj servera:
( , ) 1( , ) , 1 , 1 .m
s S i j
jnm
mg i j x i n j k
∈ =
= ≤ ≤ ≤ ≤∑ ∏
Očigledno je da važi:g(i,0)=0, i=1, 2, …, n (nema servera)g(0 j)=1 j=1 2 k (nema zahteva)
j
ETF-Beograd Performanse Računarskih Sistema
20
g(0,j) 1 j 1, 2, …, k (nema zahteva)
12.4 Bjuzenov algoritam za izračunavanje G(n)
Razbijamo pomoćnu funkciju na dve sume:
j j( , ) 1 ( , ),n 0 1 ( , ),n 0 1( , ) m m m
j j jn n nm m m
s S i j m s S i j m s S i j mg i j X X X
∈ = ∈ = = ∈ > =
= = +∑ ∏ ∑ ∏ ∑ ∏
Razbijamo pomoćnu funkciju na dve sume:
j j( , ) ( , ), ( , ),j j j
Prva suma uzima one proizvode kod kojih je nj=0, a druga one kod kojih je nj>0. U prvom sabirku možemo da izostavimo xj jer je nj=0 , a u drugom možemo da izvučemo ispred sume i smanjimo broj servera:
g(i,j)= g(i,j-1) + xj·g(i-1,j)
jedan zahtev manjejedan servisni centar manje
Dobili smo rekurzivnu proceduru za računanje g(i,j).
potražnja za j-tim serverom
j j
ETF-Beograd Performanse Računarskih Sistema
21
12.4 Bjuzenov algoritam za izračunavanje G(n)
g(n k) je n x k matrica koja u svojoj graničnoj poslednjoj koloni daje vrednost G(n)g(n,k) je n x k matrica koja u svojoj graničnoj poslednjoj koloni daje vrednost G(n)G(n)= g(n,k)
Programska realizacija (optimizovana, jerje samo poslednja kolona od interesa):
G[0]=1;FOR j:=1 TO k DO
FOR i:=1 TO n DOG[i]= G[i]+ x[j]·G[i-1];
ETF-Beograd Performanse Računarskih Sistema
22
12.4 Bjuzenov algoritam za izračunavanje G(n)
Primena Gordon-Njuelove metode i Bjuzenovog algoritmaj j g g
1. Verovatnoća da je broj poslova na j-tom servisnom centru veći od m, gde je m zadati broj :
1[ ] ( )k
niP n m p s x≥ = = ⋅ =∑ ∑ ∏( , ), ( , ), 1
[ ] ( )( )
( )
j is S n k nj m s S n k nj m i
m kj ni m
P n m p s xG n
x G n mx x
∈ ≥ ∈ ≥ =
≥ = = ⋅ =
−= ⋅ = ⋅
∑ ∑ ∏
∑ ∏
2. Iskorišćenje j-tog servera:
( , ) 1( ) ( )i js S n m k i
x xG n G n∈ − =
= =∑ ∏
Uj = P[nj>0] = P[nj≥1] = xj·G(n-1)/G(n)
Ui/Uj=xi/xj , i=1, 2, …, k , j=1, 2, …, k
ETF-Beograd Performanse Računarskih Sistema
23
j j ,
Odnos iskorišćenosti dva servera je jednak odnosu njihovih potražnji!
12.4 Bjuzenov algoritam za izračunavanje G(n)
3. Verovatnoća da broj procesa na resursu j iznosi m, tj. da je nj=m:
[ ]1
[ ] [ ] [ 1]
( ) ( 1)
j j j
mj
P n m P n m P n m
xG n m G n m
= = ≥ − ≥ + =
− − − [ ]1( ) ( 1) ( ) ( 1)( ) ( ) ( )
jm mj j
xG n m G n mx x G n m G n mG n G n G n
+⋅ − ⋅ = ⋅ − − − −
ETF-Beograd Performanse Računarskih Sistema
24
12.4 Bjuzenov algoritam za izračunavanje G(n)
4 P č ( č ki i) b j ht ( l ) j t
n
nj = ∑ m·P[nj =m]
4. Prosečan (očekivani) broj zahteva (poslova) na j-tom serveru:
m=1
P[nj≥1]=P[nj=1]+P[nj=2]+P[nj=3]+…+P[nj=n] P[nj≥2]= P[nj=2]+P[nj=3]+…+P[nj=n] P[nj≥3]= P[nj=3]+…+P[nj=n]
. . .P[nj≥n]= P[nj=n] j j
nj = P[nj≥1]+P[nj≥2]+P[nj≥3]+…+P[nj≥n]1
( )( )
nm
jm
G n mxG n=
−= ⋅∑
ETF-Beograd Performanse Računarskih Sistema
25
12.4 Bjuzenov algoritam za izračunavanje G(n)
5. Protok : Xj=Uj/sj= Uj·μj= xj·G(n-1)/G(n) · μj
Nampomena: X je protok kroz resurs a x normalizovana potražnja za resursom!
6. Vreme odziva prema Little-ovoj formuli: /j j jR n X=
Nampomena: Xj je protok kroz resurs, a xj normalizovana potražnja za resursom!
ETF-Beograd Performanse Računarskih Sistema
26
12.4 Bjuzenov algoritam za izračunavanje G(n)
• Verovatnoća da serveri α i β budu istovremeno aktivni:Verovatnoća da serveri α i β budu istovremeno aktivni:
G(n-1) G(n-2) G(n-2)P[nα1≥,nβ≥1] = Uα(n)·Uβ(n-1) = Uα(n-1)·Uβ(n) = xα· ——— ·xβ · ——— = xα· xβ · ———
G(n) G(n-1) G(n)
• Verovatnoća da serveri α, β i γ budu istovremeno aktivni:
G(n-3)P[nα1≥,nβ≥1,nγ≥1] = Uα(n) · Uβ(n-1) · Uγ(n-2) =…= xα·xβ·xγ · ———
• Verovatnoća da k servera bude istovremeno aktivno:
G(n)
G(n-k) G(n-k) k
P[n11≥,n2≥1,…,nk≥1] = x1·x2·…·xk · ——— = ——— · ∏ xiG(n) G(n) i=1
ETF-Beograd Performanse Računarskih Sistema
27
12.5 Analiza performansi mreža sa centralnim serverom korišćenjem Gordon-Njuelove metode
CPU je najtraženiji resurs – centralni server (u odnosu na njega se normalizuju potražnje)
Iskorišćenost CPU-a (centralnog servera) je:
U1= G(n-1)/G(n) , x1=1
Iskorišćenost drugih servera je:
Ui = xi·U1 = U1· ( Vi·si / V1·s1) = (Vi·si·G(n-1)) / (V1·s1·G(n)) , i= 2, …, k
Verovatnoća da su CPU i i-ti uređaj (resurs) istovremeno aktivni:Verovatnoća da su CPU i i-ti uređaj (resurs) istovremeno aktivni:
U1i= xi·G(n-2)/G(n)=(Vi·si·G(n-2))/(V1·s1·G(n))
ETF-Beograd Performanse Računarskih Sistema
28
12.5 Analiza performansi mreža sa centralnim serverom korišćenjem Gordon-Njuelove metode
Intenzitet toka kroz granu sa CPU:
X1 = U1/s1 = G(n-1)/(s1·G(n))X1 U1/s1 G(n 1)/(s1 G(n))
Produktivnost sistema:
X = p1·X1 = U1/(V1·s1) = U1/D1 = G(n-1)/(s1·V1·G(n))
Vreme provedeno u sistemu dok se ne obradi svih n poslovaVreme provedeno u sistemu dok se ne obradi svih n poslova(trajanje opsluživanja) :
T = n/X = (n·s ·V ·G(n))/G(n 1) (Little ova formula)
ETF-Beograd Performanse Računarskih Sistema
29
T = n/X = (n·s1·V1·G(n))/G(n-1) (Little-ova formula)
12.6 Analiza uskih grla (Kada nastupa zasićenje?)
Usko grlo u sistemu je onaj resurs koji ima najveće iskorišćenje (kritičan resurs)
Povećanjem n (broja poslova) u nekom trenutku će doći do zasićenja.
Usko grlo u sistemu je onaj resurs koji ima najveće iskorišćenje (kritičan resurs).S obzirom da je iskorišćenje srazmerno potražnji resursa, to je zapravo resurs sa najvećom potražnjom.
j ( j p ) jOznačimo sa b (bottleneck) kritični resurs u uslovima zasićenja:
Ub=sb·Xb ⇒ Xb=Ub/sb i uz porast broja poslova ⇒ Ub→1Resurs ulazi u zasićenje kad je tražnja za njim maksimalna (iskorišćenje teži 1). Ovaj resurs je non-stop aktivanOvaj resurs je non-stop aktivan
X=pb·Xb= (1/Vb)·(Ub/sb) Xmax=Xb/Vb =(1/Vb·sb)=1/Db
μb
Xb=1/sb= μb
Svaki od k resursa ima neku ukupnu potražnju (demand) . Obeležimo ih sa D1, D2,...,Dk . Onaj resurs koji ima najveću potražnju će prvi ući u zasićenje: Db=max(D1,..,Dk)
ETF-Beograd Performanse Računarskih Sistema
30
12.6 Analiza uskih grla (Kada nastupa zasićenje?)
Iz Little-ove formule:
max1 1 1 1
( 1)lim lim lim( ) ( ) / ( 1) ( )n n n
n n G nXT n n V s G n G n G n V s→∞ →∞ →∞
−= = =
⋅ ⋅ ⋅ − ⋅ ⋅1 1 1 1( ) ( ) / ( 1) ( )T n n V s G n G n G n V s
( ) , n>>1b bV sG n ⋅=
Xmax=Xb/Vb =(1/Vb·sb)
Iz prethodne dve j d k ti l di
Asimptotsko ponašanje vremena odziva:T(n)=n/Xmax=n·Vb·sb=n·Db , n»1 vreme provedeno u sistemu postaje direktno
b j l k lik d đ d ić j
1 1
,( 1)G n V s− ⋅jednakosti sledi:
srazmerno broju poslova ukoliko dođe do zasićenja
Vb opisuje posao (broj poseta resursu, nije karakteristika računara, tj. servera, već procesa)sb opisuje karakteristike i posla i računara (servera)
ETF-Beograd Performanse Računarskih Sistema
31
sb opisuje karakteristike i posla i računara (servera)
12.6 Analiza uskih grla (Kada nastupa zasićenje?)
Za veliko n je to asimptota, a za malo n (n=1 jedan posao, niko mu ne smeta,Za veliko n je to asimptota, a za malo n (n 1 jedan posao, niko mu ne smeta,kada završi posao na jednom resursu, pređe na drugi itd.) imamo:Tmin=T0=V1·s1+V2·s2+…+Vk·sk - minimalno vreme da posao prođe kroz sistem,
kada postoji samo jedan proces u sistemu, tj. n=1. p j j p , jT=T0 , n ≤nkrit.T=n/Xmax , n≥nkrit
T
Ove prave se seku u nkrit:T
T=n/Xmax
D1+D2+…+Dk
T XT0
nk itn
nkrit = T0· Xmax =————————max(D1,..,Dk)
ETF-Beograd Performanse Računarskih Sistema
32
nkrit
12.6 Analiza uskih grla (Kada nastupa zasićenje?)
Kada broj procesa dostigne kritični broj nkrit, javljaju se prvi efekti zasićenja. Vreme odziva brzo raste.Vi direktna karakteristika posla
⇒ nkrit. je karakteristika i računara i poslasi karakteristika i računara i posla
D +D + +D
1T = 1/X(1) = (V s G(1)) / G(0) = V s G(1)
G(1)·G(n-1)
D1+D2+…+Dk
nkrit.= T0· Xmax =————————max(D1,..,Dk)
1≤nkrit. ≤k⇒
T0 = 1/X(1) = (V1·s1·G(1)) / G(0) = V1·s1· G(1)
Xmax = G(n-1) / (V1·s1·G(n))
⇒ nkrit.= ——————— = G(1) · U(n)G(n) n»1
Ako je centralni server usko grlo : U1(n)=1G( 1) G( ) G(1)Za veliko n : G(n-1)≈G(n) ⇒ nkrit ≈ G(1)
ETF-Beograd Performanse Računarskih Sistema
33