Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 19

Skripta iz Performansi Raunarskih sistema II kolokvijum

Vrste simulacionih modela:


Vrste simulacionih modela razlikuju se po pristupu modeliranju i klasi problema koji rjeavaju, dok s druge
strane po tehnikama modeliranja i simulacije koje su za njih razvijene. Vrste su:
Emulacija,
Monte Karlo,
Kontinualna simulacija,
Simulacija diskretnih dogaaja,
Mjeovita, kontinualno diskretna simulacija.

Osim emulacije i Monte Karlo simulacije, koje su statike, sve ostale nabrojane su dinamike. U statikim
simulacijama ne postoji vremenski parametar. Simulacija se vri dok sistem ne doe u neko stanje
ekvilibrijuma, tj. dok dalje izvoenje simulacije nije korisno ili nije mogue.

o Emulacija:

Emulator je simulacioni program koji se pokree na odreenom sistemu sa svrhom da sistem izgleda kao
neki drugi. Na ovaj nain emulator rtvuje performanse u korist fleksibilnosti.

JVM (Java Virtual Machine) je primjer emulacije procesora. U tom sluaju se simulira izvravanje virtuelnog
procesora iji je instrukcioni set definisan u JVM specifikaciji.

o Monte Karlo simulacija:

Monte Karlo simulacija, povezana je sa sluajnim fenomenima. Problemi mogu biti deterministikog ili
stohastikog karaktera.

Razlikuju se sledei tipovi Monte Karlo simulacije:

Deterministiki problemi koje je teko ili skupo rjeavati

Tipian primjer ovoga tipa je raunanje vrijednosti odreenih integrala koji se ne mogu rijeiti
analitiki, tj. ija je podintegralna funkcija takva da se ne moe nai rjeenje u obliku analitikog izraza.
Monte Karlo simulacija pristupa proraunu integrala tako to se generie niz sluajnih taaka (x,y), sa
jednakim vjerovatnoama unutar odreenog pravougaonika i potom ispituje koliko je generisanih taaka
unutar povrine koja odgovara integralu.

Sloeni fenomeni koji nisu dovoljno poznati

Za njih je karakteristino da nije poznat nain uzajamnog djelovanja izmeu elemenata ve su poznate
samo vjerovatnoe njegovog ishoda, koje se koriste za izvoenje niza eksperimenata koji daju uzorke
moguih stanja zavisnih promjenljivih. Ovakav pristup se najee primjenjuje kod analiziranja drutvenih
ili ekonomskih fenomena.

Statistiki problemi koji nemaju analitika rjeenja


Statistiki problemi bez analitikog rjeenja predstavljaju specifinu klasu problema koji se rjeavaju
Monte Karlo simulacijom. Prilikom rjeavanja takvih problema takoe se koristi generisanje sluajnih
brojeva i promjenljivih.
o Kontinualna simulacija:
Kontinuln simulcij se koristi z dinmike probleme kod kojih se promjenljive stnj mijenjju
kontinulno u vremenu.
Razlikujemo tri osnovna tipa kontinulnih simulcionih modela:

Modeli koji se opisuju obinim diferencijalnim jednainama (Uspostavlja se veza nepoznate funkcije
y, realne promjenljive t i njenih izvoda y'. Nekad se rjeavaju analitiki, a nekada numerikim putem.)
Modeli koji se opisuju sistemima parcijalnih diferencijalnih jednaina (Zavise vie od jedne
promjenljive)
Modeli dinamike sistema (Sistemi sa povratnom vezom. Povratna veza moe biti pozitivna ili
negativna. Neophodno za poetak je da se postave konstante i parametri koje model sadri.)

o Simulacija diskretnih dogaaja:


Simulcij diskretnih dogj je metod simulcionog modelirnj sistem kod kojih se diskretne
promjene stnj u sistemu ili njegovom okruenju dogju diskontinulno u vremenu.
Kod model sistem s diskretnim dogjim, pored koncept koji opisuju strukturu, ko to su objekti,
relcije izmeu njih i njihovi tributi, uvedeni su i koncepti z opis dinmike. To su:

Dogaaj (Diskretna promjena stanja entiteta u sistemu ili okruenju. Izmeu dva uzastopna
dogaaja stanje sistema se ne mijenja. Postoje uslovni i bezuslovni dogaaji.)
Aktivnost (S dogaaja koji mijenjaju stanje jednog ili vie entiteta. Trajanje aktivnosti se moe
unaprijed definisati. )
Proces (Niz uzastopnih, logiki povezanih dogaaja kroz koje prolazi neki privremeni objekat.
Opisuje jednu pojavu od nastajanja do terminiranja.)

Iako su specifini detalji svakog simulatora jedinstveni, ipak svi simulatori diskretnih dogaaja dijele
zajedniku optu strukturu. Svaki ovakav simulator zahtijeva neku od sledeih komponenata:
Rasporeiva dogaaja:
Njegov zadatak je da sljedei dogaaj sa liste skloni sa liste i rasporedi ga u odgovarajuu
rutinu za procesiranje dogaaja. Smjeta nove dogaaje u listu na odgovarajue mjesto u skladu
sa vremenom kada on treba da se izvri. Vri auriranje varijable koja predstavlja globalno
vrijeme.
Varijabla koja predstavlja globalno vrijeme i nain na koji se ona aurira:
Ova komponenta biljei trenutno vrijeme izvoenja simulacije. Moe se aurirati od strane
rasporeivaa na dva naina. U prvom se uveava za neki fiksan iznos. Svi dogaaji koji se podudaraju
sa tim trenutkom alju se na izvravanje. U drugom sluaju vrijednost ove varijable se mijenja
neuniformno poto de se nekad deavati da se nekad mijenja za veliki iznos, a nekad se nee
promijeniti uopte.
Rutine za procesiranje dogaaja:
Svaki dogaaj u sistemu tipino ima svoju procesnu rutinu koja simulira ta bi se desilo da se
dogaaj nalazi u realnom sistemu.
Mehanizmi za generisanje dogaaja:
Tehnike za generisanje dogaaja su: execution driven, trace driven i distribution driven.
o Execution driven:
Ova vrsta simulacije je slina emulaciji po tome to simulator zapravo izvrava benmark
program. Na osnovu toga, simulator produkuje isti izlaz iz benmark programa koji bi bio
produkovan da se taj benmark izvrava na pravoj maini. Execution driven simulator obrada
panju i na to kako se dolazi do eljenog izlaza.
o Trace driven:
Trace (trag) je sekvenca dogaaja koji se odvijaju dok se sistem prati. U ovoj sekvenci
dogaaji su uglavnom poredani po vremenu kada treba da se izvre.
o Distribution driven:
Ovaj tip simulacije je slian trace driven simulaciji uz razliku to ulazne dogaaje generie
sam simulator tako da oni prate neku predefinisanu funkciju vjerovatnoe. Ovakav pristup
nudi veu fleksibilnost od trace driven simulacije gdje je niz dogaaja u trace-u fiksan i teko
je izmijeniti njihov redoslijed.
Rutine za biljeenje podataka i njihovo sumiranje:
Osim odravanja varijabli stanja neophodnih za simuliranje sistema, simulator mora da odrava
odgovarajue brojae dogaaja i mjerae vremena. Ove vrijednosti se na kraju koriste da bi se
izraunali odgovarajui statistiki podaci kojima se sumiraju rezultati simulacije.

o Mjeovita simulacija:

Kod pojedinih vrst sistem, kontinuln simulcij, ko i simulcij diskretnih dogj, ne moe u
potpunosti d opie nin rd sistem. To su oni sistemi koji sdre procese koji teku kontinulno i dogje
koji dovode do diskontinuitet u ponnju sistem. D bi se tkvi sistemi modelirli i simulirli, rzvijen je
mjeovit simulcij koj omoguv integrisnje kontinulnih i diskretnih element sistem. Vez izmeu
diskretnog i kontinulnog pristup postie se uvoenjem dv tip dogj. Vremenski dogji su dogji
koje generie mehnizm uprvljnj dogjim, kkv postoji u simulciji diskretnih dogj. Dogji
stnj su oni dogji koje ktivir mehnizm pomk vremen s konstntnim prirstom, iji je vremenski
intervl mli, koji je krkteristin z kontinulnu simulciju.

Validacija i verifikacija:
Postupak kojim se ispituje koliko vjerno i precizno jedn model predstvlj relni sistem, njee se moe
posmtrti kroz dv povezn kork:

Verifikacija (Da li je simulacioni program konzistentan sa modelom.)


Validacija (Da li je model precizna reprezentacija realnog sistema.)
Iko se verifikcij i vlidcij model konceptulno rzlikuju, njee se simultno sprovode od strne
modelara. Razlog z to je to se ov dv proces u praksi dobrim dijelom poklpju. Nime, ukoliko jedn
simulcioni progrm proizvodi besmislice, nije uvijek jasno koliko su krive greke u konceptulnom modelu,
koliko greke u programiranju, koliko koritenje pogrenih podtk. Zato se esto ke d su izgrdnj
model, verifikcij i vlidcij u dinamikoj povratnoj sprezi.

Prvi kork u izgrdnji model obuhvt posmtrnje relnog sistem i interkcij izmeu njegovih
rzliitih komponenti, ko i prikupljnje podtk o ponnju sistem.

Drugi kork u izgrdnji model je formirnje konceptulnog model, skup pretpostvki z


komponente model i strukturu sistem.

Trei kork u izgrdnji model je pisnje runrskih progrm z simulcione modele.

Aproksimacije realnog sistema koje se uvode prilikom izgradnje modela:

Funkcionalna aproksimacija:

Izrazito nelinearne funkcije esto se aproksimiraju nekim jednostavnim funkcijama, na primjer


linearnim. Vana pretpostavka je da jednostavnija funkcija treba da bude priblina ''originalnoj'' funkciji u
oblasti gdje e sistem vjerovatno funkcionisati. Ako radi gdje je poklapanje funkcija slabo, treba obezbijediti
da tampa poruku upozorenja.

Aproksimacija raspodjele:

Realne vjerovatnoe raspodjela koje su i same poznate jedino aproksimativno, esto se aproksimiraju
jednostavnim raspodjelama, kao to su normalna ili eksponencijalna. Najekstremniji primjer aproksimacije je
kada se promjenljiva zamijeni konstantnom.
Aproksimacija nezavisnosti:

Model se esto pojednostavljuje tako to se pretpostavlja da su razliite komponente (opisane


sluajnim promjenljivim) statistiki nezavisne.

Aproksimacija agregacije:

Veoma est tip aproksimacije. Pod agregacijom se podrazumijeva situacija kada se vie elemenata
posmatraju kao jedna cjelina. Tipini primjeri agregacije su:

o Vremenska agregacija:

Svi diskretno-vremenski modeli vre vremensku organizaciju. Interval vremena kao to je dan,
tretira se kao jedan pojedinani period. Za sve dogaaje koji se dese u toku dana pretpostavlja se da
su se desili u isto vrijeme.

o Meu-sektorska agregacija:

Vie odjeljenja, firmi, proizvodnih linija itd. posmatra se kao cjelina.

o Agregacija pomonih sredstava:

Ovdje se vie pomonih sredstava posmatra kao jedno. Na primjer, ako se posjeduje raunarski sistem
sa dva centralna procesora u paralelnoj vezi, nakon agregacije smatrae se da se posjeduje jedan koji
je duplo bri.

Aproksimacija stacionarnosti:

Stvar pojednostavljuje injenica da se parametri i druge karakteristike sistema ne mijenjaju u


vremenu. Za izvjesne vizike procese, kao to su astronomske pojave, ovo moe biti dobra poetna
aproksimacija. U granama kao to su politika, ekonomija, socijalni sistemi i sl. Svakodnevno iskustvo pokazuje
da je veina pojava nestacionarne prirode.

Sve pretpostavke i aproksimacije koje se unose u model, mogu na izvjestan nain, da dovedu u pitanje
validnost tih modela. Iz tog razloga se i pristupa odreivanju validnosti modela i ponaanja sa realnim
sistemom i njegovim ponaanjem.

Naylor i Finger (1976) formulisali su praktian pristup problemu vlidcije, koji se sastoji se iz tri fze:

Izgraditi model koji vjerno predstavlja realni sistem,


Potvrditi pretpostavke modela,
Uporediti ulazno-izlazne transformacije modela sa ulazno-izlaznim transformacijama realnog
sistema.

Formalni kriterijum za uzvrivanje validnosti modela:

U skladu sa iznesenim pretpostavkama, realan sistem treba posmatrati kao sistem opisan na viem nivou, dok
model za koji treba utvrditi validnost treba da bude na niem nivou opisa.

Homomorfizam predstavlja formalni kriterijum za utvrivanje validnosti uproenog modela za date


eksperimentalne uslove, u odnosu na osnovni model.
Da bi se utvrdio homomorfizam, moraju biti ispunjeni sledei uslovi:

Ouvanje funkcije nastupanja vremena:

Stanje u osnovnom modelu (s) i njemu odgovarajue stanje u uproenom modelu (s') moraju imati
istu funkciju nastupanja vremena. To znai da e se stanje osnovnog i uproenog modela mijenjati u
istim trenucima vremena.

Ouvanje funkcije prelaza stanja:

Ako stanju s osnovnog modela odgovara stanje s' uproenog modela, tada i slijedea stanja u koja e
model prei u narednom trenutku posmatranja moraju odgovarati jedno drugom.

Ouvanje izlazne funkcije:

Neka je s stanje osnovnog modela i neka je mogue primjenom preslikavanja H prei u stanje s'
uproenog modela. Primjena izlazne funkcije osnovnog modela (), daje isti izlaz Z kao i primjena
izlazne funkcije uproenog modela (') na stanje s'.

Iako u postupku verifikacije nema standardnog recepta, navesti i ukratko objasniti provjere koje je
preporuljivo izvriti.

Potrebno je izvriti vie razliitih provjera:

Runa verifikacija logike ispravnosti: Model se izvjesno vrijeme proputa na raunaru i runo, a potom
porede dobijeni rezultati.
Modularno testiranje: Pojedinano testiranje svakog od modula kako bi se ustanovilo da li daje razumne
izlaze za sve mogue ulaze.
Provjera u odnosu na poznata rjeenja: Model se podeava tako da predstavlja sistem ija su rjeenja
poznata i uporeuju se sa rezultatima modela.
Testiranje osjetljivosti: Varira se jedna parametar, dok ostali ostaju nepromijenjeni i provjerava se da li
je ponaanje sistema osjetljivo na promjenu tog parametra.
Testiranje na poremeaje: Parametri modela se postavljaju na neprirodne vrijednosti i provjerava se da
li se model ponaa na neshvatljiv nain. Na taj nain se otkrivaju greke u programu koje je teko
drugaije uoiti.
Generisanje sluajnih brojeva:
Dobar generator pseudosluajnih sekvenci treba da posjeduje sledee karakteristike:

Efikasnost: Poto de tipina simulacija zahtijevati veliki broj sluajnih vrijednosti, generator treba da
lako ostvari efikasno raunanje.
Dugaak period: Sekvenca neminovno morati nakon nekog parametra k poeti da se ponavlja, tako
da je xn + k = xn, xn + k + 1 = xn + 1... to je vrijednost k vea, sekvenca de se initi sluajnijom
Nezavisno i uniformno rasporeene vrijednosti: Svaka od vrijednosti mora imati istu vjerovatnou
pojavljivanja u sekvenci. Dalje, red u kojem se vrijednosti pojavljuju treba da bude nezavisan u
statistikom smislu.
Ponavljajui: Radi potreba testiranja, poeljno je da generator moe da reprodukuje identinu
sekvencu kao to je produkovao prethodni put.

Linearni kongruentni GSB:

Funkcionisanje linearnog kongruentnog GSB (LCG) se moe izraziti pomou formule:


Zi = (a Zi-1 + c) mod m
Poto period generatora ne moe da bude vei od m, poeljno je da ta vrijednost bude to vea i to stepena
2, tj. m = 2j. Dodatno je pokazano da e, u sluaju da je c 0, maksimalan period biti ostvaren ako i samo ako
vai:

Konstante m i c su uzajamno proste,


Svaki prost broj koje je faktor od m je takoe faktor i od a 1,
Ako 4 dijeli m, onda mora dijeliti a 1.

Ova ogranienja su u potpunosti obuhvaena ako se konstante izaberu tako da je m =2j, a = 4d + 1, c je neparan
broj, a j i d su pozitivni cijeli brojevi.

Kod nekih generatora konstanta c je jednaka nuli. Takvi generatori nazivaju se multiplikativni generatori.
injenica da je c jednaka nuli, operacija sabiranja je eliminisana, ime se poboljava efikasnost algoritma.
Meutim, period takvog generatora se smanjuje sa 2j na 2j-2. U sluaju da je j prost broj, period je 2j 1. Period
nikada ne moe biti 2j, poto ovaj generator nikada ne moe da produkuje broj 0.

Verifikacija sluajnih brojeva:


Problem verifikacije niza sluajnih brojeva moe se podijeliti u dvije komponente:

goodness-of-fit:

Tehnika koja se koristi za uporeivanje generisanih ili izmjerenih vrijednosti sa idealnim ili oekivanom
raspodjelom. Drugim rijeima, kolika je devijacija dobijenih od oekivanih vrijednosti. S obzirom da
dobijene i oekivane vrijednosti nisu identine, postavlja se pitanje koliko je vjerovatno da se
vrijednosti razlikuju usljed normalne sluajne promjene. Odgovor nam daje hi-kvadrat test:

Kritine vrijednosti ove raspodjele date su u tabeli hi-kvadrat raspodjele. Ove kritine vrijednosti se
zatim mogu iskoristiti da bi se utvrdilo da li su devijacije izmeu dobijenih i oekivanih vrijednosti
usljed sluajnih fluktuacija. Poto se hi-kvadrat raspodjela zasniva na centralnoj graninoj teoremi,
neophodno je da svaki mogui ishod ima dovoljno velik broj oekivanih vrijednosti (minimalno 5 ili 6).
Ako ovaj uslov nije ispunjen, susjedni mogui ishodi se moraju posmatrati kao jedan dok rezultujui
novi ishod nije dovoljno velik da bi se uslov ispunio.

nezavisni testovi:

Odreivanje da li je redoslijed vrijednosti dovoljno sluajan predstavlja cilj testova nezavisnosti. Jedan
od najpoznatijih testova nezavisnosti je serijski test. Serijski test pokuava da verifikuje uniformnost
sekvence unif (0, 1) vrijednosti u k dimenzija. Bazina ideja u dvije dimenzije je da se iscrtaju take u
dvodimenzionalnom prostoru koristei nepreklapajue parove vrijednosti generisane sekvence.
Vrijednosti se grupiu u parove tako da svaki par (x, y) predstavlja koordinate take u 2D prostoru.
Ako je raspodjela taaka u potpunosti uniformna, svaka delija treba da sadri n/2a2 taaka, gdje n
predstavlja ukupan broj generisanih sluajnih vrijednosti.

ANALIZA REDOVA EKANJA:


Postoje dva tipa modela mrea redova ekanja. U otvorenom mrenom modelu, kao to je prikazano na slici,
poslovi pristiu u sistem iz nekog vanjskog izvora. Konkretno, na slici poslovi pristiu sa lijeve strane i prvo se
procesiraju od strane CPU-a. Ovo moe da rezultuje pristupom jednom ili vie diskova. Nakon procesiranja
zahtjeva, disk podsistemi e vratiti posao CPU-u. Nakon toga, CPU moe da generie nove zahtjeve za diskove
bazirane na dobijenom odgovoru ili moe da zavri procesiranje slanjem posla na izlaznu liniju.
Za razliku od otvorenih mrea, zatvoreni mreni modeli imaju fiksan broj poslova koji cirkuliu izmeu razliitih
redova ekanja i servera u sistemu. Poto su zatvoreni mreni sistemi po svojoj logici blii ogranienoj prirodi
realnih sistema, smatraju se tanijim modelima od otvorenih mrea. Primjer zatvorene mree dat je na slici:

Osnovne pretpostavke i notacija:


Pretpostavke o sistemu koje je potrebno utvrditi prije same analize su:

Balansiranje toka poslova:

Broj poslova koji pristignu na server u dovoljno velikom vremenskom intervalu mora biti jednak broju
poslova koji napuste server. Jednostavnije reeno, ne postoji gubljenje poslova unutar servera ili reda
ekanja. Bitno je napomenuti da ova pretpostavka ne vai za krae vremenske intervale poto poslovi
moraju ekati u redu dok je server zauzet.

One-step ponaanje:

U bilo kojoj instanci vremena samo jedan posao moe da ue ili da napusti server, to znai da se
stanje sistema mijenja samo inkrementalno. Ova pretpostavka striktno ne dozvoljava poslovima da
istovremeno vre prelaze izmeu razliitih servera u sistemu.

Homogenost:

Homogenost oznaava da su prosjeno pristizanje i usluivanje poslova nezavisni od stanja sistema.

Ekskluzivnost:

Posao moe biti prisutan samo na jednom serveru, bez obzira da li je u redu ekanja ili se trenutno
usluuje. Na osnovu pretpostavke, jedna posao ne moe da istovremeno trai usluge od vie servera.

Nepostojanje blokiranja:

Uslugom koju prua server ne moe da upravlja drugi ureaj u sistemu. Kada se posao pojavi na vrhu
reda ekanja, server mora momentalno poeti da ga usluuje.

Nezavisnost:

Poslovi ne smiju da utiu jedan na drugi ni na koji nain. Jedini vid interakcije smije da bude injenica
da dijele isti red ekanja.
Notacija:
s prosjeno vrijeme potrebno da bi se usluio posao (eng. service),
= 1/s prosjeno usluivanje, definie se kao broj poslova usluen u jedinici vremena,
prosjeno pristizanje, definie se kao ukupan broj poslova koji je pristigao u intervalu T kroz taj
interval,
= / intenzitet saobraaja,
r prosjeno vrijeme odziva, definie se kao prosjeno vrijeme koje posao provede u sistemu,
ukljuujui vrijeme koje provede u redu ekanja plus vrijeme za koje se usluuje (eng. response),
w prosjeno vrijeme koje posao provede u redu ekanja (eng. wait),
q prosjean broj poslova u redu ekanja (eng. queue),
n broj poslova u sistemu, raunajui i poslove u redu ekanja i poslove koji se usluuju,
U utilizacija (iskoristivost) sistema, definie se kao procenat ukupnog vremena u kojem je sistem
zauzet (eng. utilization),
a broj pristizanja koja se dese u nekom intervalu T (eng. arrival),
d broj odlazaka koji se dese u nekom intervalu T (eng. departure).

Utilizacioni zakon:
Pretpostavimo da se sistem posmatra odreeni vremenski interval T, biljei broj poslova koji stigne u sistem u
tom vremenskom intervalu, kao i vrijeme usluivanja svakog posla. Na osnovu toga, moe da se dobije
prosjeno pristizanje kao kolinik broja pristiglih poslova (a) i vremenskog intervala T:

= a /T
Prosjena utilizacija sistema (U) je procenat ukupnog vremena u kojem je sistem bio zauzet usluivanjem
poslova. Ako se sistem posmatra u intervalu T i otkrije da je bio zauzet b vremenskih jedinica, onda slijedi da
je prosjena utilizacija:

U=b/T
Ako se uzme da je d broj usluenih poslova u vremenskom intervalu T, gornja formula moe da se napie na
sledei nain:

U = b / T = (b / d) * (d / T)
Kolinik b/d oigledno predstavlja prosjenu koliinu vremena u kojem je ureaj zauzet usluivajui svaki od
d poslova. Ovo i predstavlja definiciju prosjenog vremena usluivanja po poslu (s = b/d). Dalje, d/T predstavlja
prosjeno usluivanje (broj odlazaka u jedinici vremena). Poto vrijedi pretpostavka o balansu poslova, slijedi
i da broj odlazaka mora biti jednak broju dolazaka u istom intervalu. Stoga, prosjeno usluivanje mora biti
jednako prosjenom pristizanju (). Ako se ove vrijednosti uvrste u gornju jednainu, dobija se sledea
jednakost:

U = s.
Prosjena utilizacija ureaja (procenat ukupnog vremena u kojem je sistem zauzet) jednaka je proizvodu
prosjenog pristizanja i prosjenog vremena usluivanja jednog posla. Ova jednakost se naziva utilizacioni
zakon.
Little-ov zakon:

Ako se black box sistem sa slike posmatra dovoljno velik interval vremena T, vidjee se da u sistem ulazi a
poslova. Ako je ukupno kanjenje (ekanje) svih poslova u redu ekanja D, onda je prosjeno vrijeme ekanja
jednog posla (w) jednako:

w=D/a
Poto je = a / T, gornja jednaina se moe napisati kao:

D=wT
Sa druge strane, uzimajui u obzir injenicu da poslovi ekaju samo kada su u redu ekanja, formula za ukupno
kanjenje se moe dobiti i kao proizvod prosjenog broja poslova u redu ekanja i vremenskog intervala T u
kojem se vri posmatranje. Znai:

D = qT
Izjednaavanjem prethodne dvije jednakosti dobija se:

qT = w T
Skraivanjem sa T, dobija se konana jednakost:

q=w
Zadnji izraz, poznat kao Little-ov zakon, govori da se prosjean broj poslova u redu ekanja moe dobiti kao
proizvod prosjenog vremena jednog posla provedenog u redu ekanja i prosjenog pristizanja.

Slijede tri razliite formulacije Little-ovog zakona:

Prosjean broj poslova u redu ekanja jednak je proizvodu prosjenog pristizanja i prosjenog
vremena koje jedan posao provede ekajui u redu:
q = w
Ako se posmatra cijeli sistem, koji ukljuuje i server i red ekanja, dobija se black box pogled na sistem
sa slike 4.3. Prosjean broj poslova u sistemu jednak je proizvodu prosjenog pristizanja i prosjenog
odzivnog vremena sistema:
n = r
Ako se posmatra samo server, iskljuujui red ekanja, dobija se da je prosjean broj poslova koji se
usluuju jednak proizvodu prosjenog pristizanja i prosjenog vremena usluivanja jednog posla. Na
osnovu pretpostavke o ekskluzivnosti, slijedi da je prosjean broj poslova koji se usluuju jednak
utilizaciji servera. Znai:
U = s
Kandall-ova notacija:
Stohastiki model reda ekanja moe da se potpuno specifikuje koritenjem est parametara.
Kendall-ova notacija je metoda za predstavljanje tih est parametara u formi A/S/c/B/N/D.
Nabrojani simboli imaju sledee znaenje:
A oznaava proces pristizanja poslova u red ekanja (eng. arrival). Ovaj stohastiki proces opisuje
kada poslovi pristiu u red. Jo korisnije za analizu je poznavanje vremena izmeu dolazaka razliitih
poslova. Ako poslovi pristiu u vremenima T0, T1, ..., Ti, ... , vremena t1 = T1 T0, t2 = T2 T1, ... , ti
= Ti Ti-1 se nazivaju vremena izmeu dolazaka. Obino se pretpostavlja da ova vremena prate
odreenu funkciju raspodjele. Najei proces koji se koristi u analizi redova ekanja je Poisson-ov
proces. U Poisson-ovom procesu vremena izmeu dolazaka prate eksponencijalnu raspodjelu.
Eksponencijalna raspodjela ima jednu zanimljivu matematiku osobinu koja uveliko olakava
cjelokupnu analizu koja se opisuje. Ta osobina je da pojava sledeeg dogaaja uopte ne zavisi od
vremena pojavljivanja prethodnog dogaaja. Ovo svojstvo se naziva memorylessness.

S oznaava raspodjelu vremena potrebnih za usluivanje poslova kada napuste red ekanja i preu
na jedan od servera. Notacija je identina kao i kod raspodjele vremena izmeu dolazaka poslova u
red ekanja poto se Poisson-ov proces i ovdje koristi kao najee koritena raspodjela.

c oznaava broj servera u sistemu. Svaka analiza redova ekanja pretpostavlja da su svi serveri
identini, tako da svaki ima istu raspodjelu vremena potrebnih za usluivanje poslova.

B oznaava ukupan broj poslova koji mogu da stanu u sistem, raunajui poslove u redu ekanja i
poslove koji se usluuju na serveru. Realni sistemi imaju fiziku granicu koliko njihov bafer moe da
primi poslova. Meutim, analizu je lake vriti ako se pretpostavi da ovdje ne postoje ogranienja i da
je broj poslova koji moe da stane u sistem beskonaan.

N oznaava ukupan broj poslova koji bi ikad mogli da uu u sistem. Kao i za prethodni parametar,
analiza se znatno pojednostavljuje ako se i za ovaj parametar pretpostavi da je beskonaan.

D oznaava nain na koji se poslovi izmjetaju iz reda ekanja i smjetaju na server radi izvravanja.
Ovaj parametar se naziva disciplina usluivanja. Najea upotrebljivana disciplina je FCFS (eng. First
Come, First Served). Mogu se upotrebljavati i neke druge discipline kao to su LCFS (eng. Last Come,
First Served) i RR (eng. Round Robin).

U veini analiza se pretpostavljaju podrazumijevane vrijednosti za zadnja tri parametra (, , FCFS) pa se i


ne piu u specifikaciji Kendall-ove notacije.

M/M/1 sistemi:
Analiza ovih sistema se zapoinje sa pretpostavkom da poslovi pristiu u red ekanja jedan po jedan, tj. da ne
moe u jednom trenutku stidi grupa poslova odjednom. Na osnovu ove pretpostavke stanje itavog sistema
se moe opisati sa cijelim brojem n, koji predstavlja ukupan broj poslova u sistemu (poslovi u redu ekanja i
poslovi koji se usluuju na serveru).

Pristizanje novog posla u sistem se naziva roenje (eng. birth). Ovaj dogaaj prouzrokuje tranziciju sistema iz
stanja n u stanje n + 1. Slino tome, kada server zavri sa usluivanjem posla sistem prelazi iz stanja n u stanje
n 1. Ovaj dogaaj se popularno naziva smrt (eng. death). itav proces se naziva proces roenja i smrti i moe
se predstaviti dijagramom:

U stabilnom stanju, prosjeno prelaenje u stanje n mora biti jednako prosjenom izlaenju iz stanja n. Ako se
navedena osobina posmatra na slici, tok izmeu stanja n 1 i n mora biti jednak u oba smjera. Bez ove
pretpostavke, broj poslova u sistemu bi neogranieno rastao. Ponaanje stabilnog stanja se esto naziva
konzervacija toka (eng. conservation of flow).

Tok za strelicu koja je usmjerena udesno je vjerovatnoa da se sistem nalazi u stanju n 1 pomnoena sa
prosjenim pristizanjem poslova u sistem, . Slino tome, tok za strelicu koja je usmjerena ulijevo je
vjerovatnoa da se sistem nalazi u stanju n puta prosjeno usluivanje poslova u sistemu, . Poto u stabilnom
stanju ove dvije vrijednosti moraju da budu jednake, dobija se jednaina:

Rearaniranjem se dobija sljedea rekurentna jednakost:

Iz operacionalne analize je poznato da je intenzitet saobraaja:

Takoe, iz rekurentne relacije dobija se da je:

Na osnovu toga moe se zakljuiti uoptena jednakost vjerovatnoe da se u sistemu nalazi n poslova:
Poto zbir svih vjerovatnoa mora biti jednak 1, dobija se da je:

Razvijanjem gornje sume dobija se:

Ako je < 1 (to mora da vai u ovim sistemima), moe se pokazati da dobijena suma konvergira ka vrijednosti
1 . Ako ovu vrijednost vratimo u uoptenu jednainu za vjerovatnou da se u sistemu nalazi n poslova,
dobija se:

Na osnovu dobijene jednakosti lako je zakljuiti da vjerovatnoa da se u sistemu nalazi odreeni broj poslova
zavisi iskljuivo od intenziteta saobraaja u sistemu, odnosno od odnosa prosjenog pristizanja i prosjenog
usluivanja.

Prosjean broj poslova u sistemu:

Korespondirajua varijansa za dobijeni broj poslova u sistemu je:

Iz Little-ovog zakona je poznato da je prosjean broj poslova u sistemu proizvod prosjenog odzivnog vremena
sistema i prosjenog pristizanja. Na osnovu toga moe se dobiti prosjeno vrijeme odziva:

Poto se najvie jedan posao moe usluivati u bilo kom trenutku, prosjean broj poslova koji ekaju u redu
moe se izraunati na sljedei nain:

Korespondirajue prosjeno vrijeme koje posao provede ekajui u redu ekanja je jednostavno izraunati ako
se primjeti da je ukupno vrijeme koje posao provede u sistemu zapravo vrijeme odziva. Na osnovu toga slijedi
da je prosjeno vrijeme koje posao provede u redu ekanja jednako razlici ukupnog vremena koje provede u
sistemu i prosjenom vremenu za koje se posao uslui (1/):
Konano, vjerovatnoa da se u sistemu nalazi minimalno k poslova dobija se sumiranjem vjerovatnoa Pk, Pk+1,
Pk+2,... :

Koritenjem svih dobijenih rezultata, mogu se napraviti neki uopteni komentari o performansama sistema sa
jednim redom ekanja. Prvo, server je zauzet kada se u sistemu nalazi jedan ili vie poslova:

SAOPTAVANJE REZULTATA:
Vaan dio svake studije evaluacije performansi je prezentacija zavrnih rezultata. Konaan cilj svake analize
performansi je pomo u donoenju odluka. Analiza iji rezultati ne mogu da se protumae od strane ljudi koji
donose odluke je jednako vrijedna kao analiza koja nije ni izvrena. Samim tim, na analitiaru performansi je
odgovornost da rezultate saopti na to jednostavniji nain. Ovo zahtijeva koritenje rijei, slika i grafova radi
objanjavanja rezultata i analize.

Postoji velik skup grafova koji se koriste za prezentovanje dobijenih rezultata performansi raunarskih sistema.
U taj skup spadaju linijski, bar i pie grafovi, kao i histogrami.

Postoje dva tipa varijabli koje se prikazuju na graficima:


Kvalitativne
Kvantitativne

Sledee preporuke pomau u poboljavanju grafikih prezentacija:

Graf treba da zahtijeva minimalan napor od strane njegovog posmatraa:

Predstavlja vjerovatno najvaniju metriku u mjerenju koliko je odreeni graf dobar. Preporuka se
moe demonstrirati pomou koritenja legende na dijagramu. Postoje dva naina oznaavanja
razliitih linija na linijskom dijagramu pomou legend box-a i pomou direktnog labeliranja. Na
osnovu primjera sa slike oigledno je da je direktno labeliranje pogodnije, a to pogotovo vai ako je
broj linija velik.

Maksimiziranje koliine informacija:

Na grafu je neophodno da postoji dovoljno informacija da bi on sam sebi bio dovoljan. Postoji vie
naina kako da se ovo ostvari. Na primjer, treba koristiti pune rijei umjesto simbola poto simboli
zahtjevaju dodatan napor od posmatraa. Ose na grafu treba da nose to je mogue vie informacija
i da ukljuuju jedinice. Na primjer, CPU vrijeme u sekundama nosi vie informacija od CPU vrijeme.
Minimiziranje tinte:

Treba predstaviti to vie informacija sa to manje pisanja (tinte). Previe nepotrebnih informacija na
grafu ga ini zbrkanim i neinteresantnim. Na primjer, grid linije ne treba da se prikazuju ako nisu
neophodne da bi se tano proitale vrijednosti. Grafiki primjer prikazan je na slici. Na prvom grafu
je prikazana dostupnost sistema, a na drugom nedostupnost koja je predstavljena kao 1 - dostupnost,
a i skala je izmjenjena. Oigledno je da je drugi graf smisleniji i da daje vie informacija od prvog.

Koristiti iroko prihvaene obiaje:

Treba da se predstavi ono to ljudi oekuju. Na primjer, koordinatni poetak treba da bude u taki (0,
0), uzrok (nezavisna veliina) treba da bude na x-osi, a posljedica (zavisna veliina) na y-osi, skale treba
da budu linearne i da se poveavaju slijeva u desno i odozdo prema gore. Odstupanja od ovih
preporuka su dozvoljena, ali zahtijevaju dodatan napor za itanje informacija pa se preporuuju samo
u rijetkim situacijama.

Izbjegavati dvosmislenosti:

Treba prikazati strelice na osama, podjele skala i koordinatni poetak, kao i identifikovati pojedine
krive i bar-ove. Graf treba lako da se ita. Ne treba prikazivati vie varijabli na istom dijagramu.

este greke na dijagramima:

Predstavljanje previe alternativa na jednom dijagramu:

Dijagram treba da bude ogranien na 6 krivih linija, bar i kolonski dijagrami na 10 razliitih vrijednosti,
a pie dijagrami na 8 komponenata. Svaki mogui ishod na histogramu mora da ima najmanje 5
vrijednosti.

Predstavljanje previe z-varijabli na jednom dijagramu:

Na slici su na istom dijagramu predstavljeni vrijeme odziva, utilizacija i propusni opseg sistema u
funkciji od broja korisnika. Predstavljanje tri y-varijable istovremeno tedi prostor, ali posmatrau
ostavlja problem asociranja krivih sa odgovarajuom skalom to mu znatno oteava da dobije eljenu
poruku. Samim tim, prezentovanje svake y-varijable na zasebnom dijagramu je mnogo loginije i bolje
rjeenje.
Koritenje simbola umjesto teksta:

Slika prikazuje linijski dijagram koje je teak za razumijevanje poto na dijagramu ne postoji tekst.
Posmatra mora dodatno da proe kroz tekst da bi otkrio ta svaki od navedenih simbola zapravo
predstavlja.

Postavljanje dodatnih informacija na dijagram:

Cilj svakog dijagrama je da prenese odreenu poruku svom posmatrau. Bilo koja informacija koja
odvlai panju posmatraa od te poruke je suvina i treba je izbjegavati.

Koritenje linijskog umjesto kolonskog dijagrama:

Linije koje povezuju uzastopne take na grafu naglaavaju injenicu da se vrijednosti izmeu taaka
mogu priblino interpolirati. Slika pokazuje primjer pogrene upotrebe linijskog dijagrama. U ovom
primjeru su prikazane performanse izraene u MIPS-u za razliite tipove CPU-ova. Poto frakcionalni
dijelovi CPU tipova nemaju smisla, u ovom sluaju treba koristiti kolonske ili pie dijagrame.

Grafike varke:
U ovoj sekciji su predstavljene tehnike koje analitiari koriste da namjerno sakriju istinu i prevare posmatraa
grafa. Neke od takvih varki su:

Koritenje nenultnog koordinantnog poetka:

U normalnoj situaciji ose grafa se sijeku u koordinatnom poetku koji se oznaava sa takom (0, 0).
Pomjeranjem koordinatnog poeka i odgovarajuim skaliranjem grafa, mogue je uveati ili smanjiti
percepciju razlike u performansama. Na slici, iste performanse su prikazane na dva razliita grafa
koritenjem razliitih skala i razliitih koordinatnih poetaka. Dva grafa sada dovode do izvoenja dva
razliita zakljuka iako se radi o istim podacima. Po prvom ispada da je jedna alternativa mnogo bolja
od druge, a po drugom ispada da su performanse alternativa skoro jednake.
Meutim, nijedan od dva grafa nije pravilan. Pravi nain za skaliranje grafa je da se skala izabere tako
da je vertikalna visina najvie take najmanje 3/4 horizontalnog odmaka najdesnije take. Takoe,
koordinatni poetak treba da se predstavi takom (0, 0) osim ako ne postoji neki opravdan razlog da
se tako ne uradi. Performanse sistema sa prethodne slike su na pravilan nain predstavljene na
narednoj slici:

Koritenje double-whammy grafova radi dramatiziranja:

Dvije krive na istom grafu mogu imati dvostruki uinak u odnosu na samo jednu. Ovo se moe iskoristiti
u svrhu naglaavanja informacije, bez obzira da li je ona dobra ili loa. Ako postoje dvije metrike koje
su povezane, poznavanjem jedne moe se automatski zakljuiti druga. Propusni opseg i vrijeme odziva
su primjer povezanih metrika. Meutim, ako se obe ove metrike predstave na istom grafu, kao to je
uraeno na slici, uticaj na nestrunog posmatraa moe da bude dvostruko vei u odnosu da je na
grafu predstavljena samo jedna metrika.

Predstavljanje brojeva bez intervala povjerenja:

Mnogi rezultati mjerenja predstavljaju sluajnu kvantifikaciju performansi. Ako se postupak mjerenja
ponovi, mogue je da rezultati ne bi bili isti. Meutim, i kada se izvri nekoliko mjerenja i predstavi
njihova srednja vrijednost, opet ne mora da znai da se performanse statistiki razlikuju, to je i
opisano u prethodnoj glavi. Na slici su prikazane krive koje prikazuju performanse dva sistema sa i bez
intervala povjerenja. Na lijevom dijagramu izgleda da je jedan sistem bolji po performansama od
drugog. Meutim, desni dijagram pokazuje da razlika izmeu dva sistema moda i ne postoji.
Piktogrami skalirani po visini:

Jedan od naina za predstavljanje razlike u performansama je crtanje odgovarajue skaliranih slika


sistema. Primjer je prikazan na slici. Performanse lijevog sistema su duplo bolje od performansi desnog
sistema. Taj odnos je na lijevom dijelu slike prikazan na nain da su performanse lijevog sistema
prikazane duplo veim i po irini i po visini. Samim tim, povrina lijevog pravougaonika postaje etiri
puta vea od povrine desnog. Pravilan nain za skaliranje piktograma je prikazan na desnom dijelu
slike, gdje je skaliranje uraeno po povrini. Po tom skaliranju, irina i visina desnog pravougaonika
treba da budu 1.41 puta vee od irine i visine lijevog pravougaonika.

Koritenje neodgovarajuih veliina elija u histogramima:

Odabir irina delija uvijek predstavlja izazov. Uglavnom zahtijeva vie od jednog pokuaja. Ako su
delije preiroke, svi podaci padaju u samo nekoliko delija. Sa druge strane, ako su delije preuske, na
histogramu se gubi osjeaj. Odgovarajuim izborom irine delije, podaci se mogu predstaviti kao da
pripadaju odgovarajuoj raspodjeli. Na slici su prikazana dva histograma pomou kojih se predstavljeni
isti podaci. Na prvom su podaci grupisani tako da izgleda da oni prate Gausovu raspodjelu, a na
drugom da prate eksponencijalnu raspodjelu.

Koritenje prelomljenih skala u kolonskim dijagramima:

Efekat slian onom koji izaziva izbor nenultog koordinatnog poetka se moe postidi prelamanjem
skale po sredini, kao to je prikazano na slici. Ako se posmatra desni dio slike, moe se zakljuiti da
postoje znatne razlike izmeu sistema, dok lijevi dio slike daje suprotnu poruku.

You might also like