About architecture design process. Suorituskyky: mittasuureet. Vastausaikaperhe. Käyttöastesuureet. Muita suorituskykysuureita

Samankaltaiset tiedostot
Menetelmien vertailua

Menetelmien vertailua. Mallinnus Käyttäjämalli. Mallinnus Käyttäjämalli. Simulointi Käyttäjämalli. Mittaus Käyttäjämalli

Järjestelmätason mallit III

Jonojen matematiikkaa

Liikenneteorian tehtävä

Littlen tulos. Littlen lause sanoo. N = λ T. Lause on hyvin käyttökelpoinen yleisyytensä vuoksi

Vuonohjaus: ikkunamekanismi

Demonstraatiot Luento 7 D7/1 D7/2 D7/3

J. Virtamo Jonoteoria / Prioriteettijonot 1

Yleistä. Esimerkki. Yhden palvelimen jono. palvelin. saapuvat asiakkaat. poistuvat asiakkaat. odotushuone, jonotuspaikat

3. Esimerkkejä luento03.ppt S Liikenneteorian perusteet - Kevät

pitkittäisaineistoissa

J. Virtamo Jonoteoria / Prioriteettijonot 1

Tutkimustiedonhallinnan peruskurssi

9. Muunneltavuuden hallinta

2G-verkoissa verkkosuunnittelu perustuu pääosin kattavuuden määrittelyyn 3G-verkoissa on kattavuuden lisäksi myös kapasiteetin ja häiriöiden

D B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää

JHS 180 Paikkatiedon sisältöpalvelut Liite 4 INSPIRE-palvelujen laadun testaus

Esimerkki: Tietoliikennekytkin

Ohjelmistojen suorituskyky, Kurssin tavoitteet

pitkittäisaineistoissa

Flowbased Capacity Calculation and Allocation. Petri Vihavainen Markkinatoimikunta

Tiedon analysoinnista pitkäaikaissäilytykseen

5. laskuharjoituskierros, vko 8, ratkaisut

Mittaustulosten tilastollinen käsittely

Estynyt puheluyritys menetetään ei johda uusintayritykseen alkaa uusi miettimisaika: aika seuraavaan yritykseen Exp(γ) pitoaika X Exp(µ)

3.6 Su-estimaattorien asymptotiikka

3. Esimerkkejä. Sisältö. Klassinen puhelinliikenteen malli (1) Klassinen puhelinliikenteen malli (2)

Demonstraatiot Luento

Sovellettu todennäköisyyslaskenta B

Skedulerisimulaattorin implementointi fysiikkatöille ja sen matemaattinen validointi

käyttötapaukset mod. testaus

Specification range USL ja LSL. Mittaustulokset ja normaalijakauma. Six Sigma filosofia: Käytännössä. Pitkäaikainen suorituskyky

Lisätehtäviä ratkaisuineen luentomonisteen lukuihin 2-4 liittyen

TIETOLIIKENNEVERKKOJEN OPISKELU TTY:llä

MS-A0502 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Tutkimusmenetelmät-kurssi, s-2004

Jonot ja niiden hallinta

Harjoitus 7: NCSS - Tilastollinen analyysi

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Jonot ja niiden hallinta

1. Tilastollinen malli??

Odotusjärjestelmät. Aluksi esitellään allaolevan kuvan mukaisen yhden palvelimen jonoon liittyvät perussuureet.

Suorituskyvyn varmistaminen sovelluskehityksen eri vaiheissa Paavo Häkkinen, Presales Teamleader Compuware Finland

Jonot ja niiden hallinta

Teoria. Prosessin realisaatioiden tuottaminen

Monimutkaisempi stop and wait -protokolla

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Identifiointiprosessi

Tähtitieteen käytännön menetelmiä Kevät 2009

Jonot ja niiden hallinta

805306A Johdatus monimuuttujamenetelmiin, 5 op

Simulation model to compare opportunistic maintenance policies

Dynaamiset regressiomallit

Flowbased Capacity Calculation and Allocation. Petri Vihavainen Markkinatoimikunta

Suorituskyky ja ohjelmistokehitys Suorituskykymallit

Tuotannon jatkuva optimointi muutostilanteissa

Liikenneongelmien aikaskaalahierarkia

HELIA 1 (15) Outi Virkki Tiedonhallinta

MS-C1340 Lineaarialgebra ja

Integrointi. Ohjelmistotekniikka kevät 2003

Tilastollinen testaus. Vilkkumaa / Kuusinen 1

Referenssit ja näytteenotto VLBI -interferometriassa

VUOROTTAMINEN YKSI CPU

Web sovelluksen kehittäminen sähkönjakeluverkon suojareleisiin

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

Ilkka Mellin Todennäköisyyslaskenta. Osa 2: Satunnaismuuttujat ja todennäköisyysjakaumat. Momenttiemäfunktio ja karakteristinen funktio

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Sovellettu todennäköisyyslaskenta B

MS-A0503 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Algoritmit 1. Luento 3 Ti Timo Männikkö

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

MS-C2111 Stokastiset prosessit

4.1. Olkoon X mielivaltainen positiivinen satunnaismuuttuja, jonka odotusarvo on

Esimerkki 1: auringonkukan kasvun kuvailu

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto

14. Luento: Kohti hajautettuja sulautettuja järjestelmiä. Tommi Mikkonen,

Miten voin selvittää säästömahdollisuuteni ja pääsen hyötymään niistä?

MS-A0503 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Estimointi. Vilkkumaa / Kuusinen 1

Numeeriset menetelmät

Tilastollinen päättely II, kevät 2017 Harjoitus 1A

SaSun VK1-tenttikysymyksiä 2019 Enso Ikonen, Älykkäät koneet ja järjestelmät (IMS),

Estojärjestelmä (loss system, menetysjärjestelmä)

Mikrobikriteereiden arviointi esimerkkinä kampylobakteeri

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Aalto-yliopiston sähkötekniikan korkeakoulu Korvaavuusluettelo

Osa 2: Otokset, otosjakaumat ja estimointi

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen

Ohjelmasuoritusmalli ja sen käyttö

MS-A0503 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

TIETOKANNAN SUUNNITTELU

Virhearviointi. Fysiikassa on tärkeää tietää tulosten tarkkuus.

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

DIGITRAFFIC - Yleisesittely

Näin ei voi enää jatkua! - Toiminnan kehittäminen LEANin avulla

Megaprojekti pysyi aikataulussa. Totta vai tarua?

riippumattomia ja noudattavat samaa jakaumaa.

Transkriptio:

About architecture design process 1. Basic functionality and composition Roles, creators of data, processing needs, data flows, decisionmaking points Modularity and evolvability, understandability 2. Addition of correct distribution mechanisms Communication model Decision model Vertical and horizontal distribution 3. Performance analysis Modeling, analysis indications of the performance 4. Selection between alternative architectures Suorituskyky: mittasuureet perhe Palvelukyky (ability to serve) vastausaika (response ) kiertoaika, kääntymisaika (turnaround ) vasteaika (reaction ) suoritusteho, läpäisy (throughput) Käyttöaste (utilization; sisäinen suorituskyky) komponentin i käyttöaste Suorituskyvystä komponentin i jononpituus ei voi puhua komponentin i läpäisyaika määrittelemättä työkuormaa Käyttäjä aloittaa pyynnön kirjoittamisen Käyttäjä Pyyntö Pyynnön lähettää perillä käsittely pyynnön alkaa Kiertoajan puolikas Vasteaika (alaraja) (yläraja) Vastaus alkaa saapua käyttäjälle Koko vastaus on perillä Aika Kapasiteetti järjestelmän kapasiteetti komponentin i kapasiteetti Käyttöastesuureet Käyttöastesuureet ovat tutkijan mittoja Kasvun logiikka kuorma kasvaa laitteiden kuormitukset kasvavat (eri tavoin) työjonot laitteilla kasvavat (ylilineaarisesti!!) töiden läpimenoajat kasvavat Tutkijan kysymykset miten kuorman kasvu vaikuttaa eri laitteisiin kuormitukseen, läpimenoaikaan, läpäisyyn Managerin uteliaisuus: kuinka paljon kapasiteettia tarvitaan? Käyttäjän valinta: onko yhteisten resurssien käytölle vaihtoehtoja? Muita suorituskykysuureita Palvelun onnistuminen Palvelu tehty Palvelua ei voitu tehdä Pyynnön tulos Suorituskykysuure Tulos: ok Tulos: virhe i Häiriö j Läpäisy Kuormitus Virheen i todennäköisyys Virheiden i väliaika Häiriön j kestoaika Häiriöiden j väliaika Kuinka hyvin järjestelmä pystyy palvelemaan - on saatavilla - suorittaa annetun tehtävän ja oikein 1

Heterogeenisyys Kuormamalli: joukko oleellisesti erilaisia töitä kokonaiskäyttäytyminen ( keskiarvo?) => työluokkakohtaiset suorituskykyarvot Epähomogeeninen aikakäyttäytyminen ruuhka-aika, normaalikuorma, hiljainen kausi => mallinna erikseen HUOMAA: mediaani korjaa jakauman vinouden, mutta se ei korjaa jakauman monihuippuisuutta! Suorituskykyyn vaikuttavat tekijät Laitteiston komponenttien kapasiteetit (kuorma & kapasiteetti => millainen kuormitus missäkin?) Ohjelmiston tehokkuus algoritmi ja sen toteutus ohjelmistoarkkitehtuuri, erityisesti hajautus ja rinnakkaisuus suorituskyky pullonkaulassa Työkuorma (workload) Resurssien hallinta politiikka (allokointi, skedulointi) viritys (parametrien asetukset) Mistä puhutaan, kun puhutaan suorituskyvystä? Käyttäjämalli Kuormamalli malli Käyttäjä => työkuorma Työkuorma => resurssien kuormitus Resurssien kuormitus => vastausaika Malli: oleellisen täsmällinen kuvaus Järjestelmämalli Analyyttinen Käyttäjämalli malli Kuormamalli malli Järjestelmämalli Muodostetaan järjestelmää kuvaava matemaattinen malli jonomalli jonoverkkomalli määrittelyt: yleensä todennäköisyysjakaumia Määritetään tai määritellään mallin parametrien arvot Lasketaan suorituskykysuureiden arvot Menetelmäpaletti laaja koulumatematiikka jonoteoria tasapainoyhtälönratkaisu (jne.) Mallin validiteetti? Tulosten validiteetin rajat? Menetelmän valinta Mallin rakenne Kriteeri Mittaus Simulointi Vaihe Ajan tarve proton jälkeen vaihtelee milloin vain kohtalainen Välineistö mittaristo ohjelmointikie li (*) Tarkkuus vaihtelee kohtalainen (**) Entä jos vaikeaa onnistuu Kustannus korkea kohtalainen Myytävyy korkea kohtalainen s (*) ohjelmistotukea on olemassa (**) aina mahdollista: tulokset ovat täysin virheellisiä Analyyttin milloin en vain pieni analyytikko karkea helppoa pieni hankala RR exp FCFS uniform Abstrakti matemaattinen rakenne (esim. laskentaa varten) Yksityiskohtainen toimintakuvaus (esim. simulointia varten) Arrival Service request Sending Collision? Transmission Receive OK? Handling_req 2

Mallin tarkkuus Yksinkertainen malli => yleiskuva käyttäytymisestä (analyyttinen malli, simulointi) Yksityiskohtainen malli => selityksiä käyttäytymiselle (analyyttinen malli, simulointi) Mallinnusprosessi aloita yksinkertaisella mallilla (ks. Occamin partaveitsi) jos tulokset eivät tyydyttäviä, lisää yksityiskohtaisuutta: oleelliseksi arvioitavia selittäjiä jatka, kunnes tietämyksen taso on riittävä (tai kustannukset kasvavat liian suuriksi) Tarkkuuden lisäyksen hinta: Latency Missä aika kuluu Network Transmission Service CPUs Disks Server site LANs CPUs Latency: : protokollan yleishallinto Yksinkertaistus: verkon jonotuksia ei ole huomioitu Queuing Disks LANs CPU Disk Palvelijan vastausajan synty (1) W1 S1 odotusaika palveluaika W2 S2 W3 S3 W4 S4 W5 S5 CPU : palvelutarve D = S1+S3+S5 jonotusaika Q = W1+W3+W5 läpimenoaika R = D+Q DISK : Rdk = Ddk+Qdk R = R + Rdk Palvelijan vastausajan synty (2) CPU Disk W1 S1 W2 S2 W3 S3 R = D + Q + Ddk + Qdk = D + Ddk + Q + Qdk W4 S4 W5 S5 Kevyt kuorma => R ~ R0 R = Σ Di Kuorma kasvaa => kukin Qi kasvaa (ylilineaarisesti) Raskas kuorma => R ~ Σ Wi (>> R0 R ) Viritys/kasvatus: DiD pienenee => vaikutus riippuu laitteen i kuormituksesta Asiakkaat jonossa Operationaalinen jonomalli: kaikki suureet ovat mitattavissa λ = A/T ~ X S = B/C keskimääräinen palveluaika saapumistiheys U = B/T käyttöaste X Käytt = yttöastelaki C/T suoritusteho, U = läpäisy λ XS S T mittausaika A saapujien lkm C poistujien lkm B busy Verkkosegmentti Esimerkki läpäisy mittausaikana 1000 pakettia/s paketin siirtoaika 0.15 ms mikä on segmentin käyttöaste? U = XS => U = 1000 x 0.00015 = 0.15 = 15% Oletus operationaalisissa malleissa mitattu ajanjakso on tyypillinen järjestelmä on tasapainotilassa (A~C) 3

Littlen laki Littlen laki: perustelu n(t) Saapumistiheys X Little: : N = XR W = kokonaisoleskeluaika järjestelmj rjestelmässä (tumma alue) R = W / C keskimää ääräinen vastausaika N = W / T keskimää ääräinen jonopituus (*)( X = C / T läpäisy (*) Huom: jononpituus sisält ltää myös s palveltavan T Asiakas saapuu jonoon R jonon pituuden odotusarvo on N Asiakkaan läpimenoaika läpimenoajan odotusarvo on R tänä aikana jonoon saapuu uusia asiakkaita XR Asiakas poistuu jonosta jälkeen jäävän jonon pituuden odotusarvo on N => N = XR Avoin ja suljettu järjestelmä N X laki (response law) M pääp äätettä Z miettimisaika Avoin järjestelmä (ääretön) populaatio asiakkaiden lkm vaihtelee saapumistiheys = poistumistiheys kysymys: vastausajan käyttäytyminen Suljettu järjestelmä kiinteä asiakasjoukko kysymys: vastausajan käyttäytyminen vuon nopeus (käyttöasteet?) R vastausaika X suoritusteho kyselyä/aikayksikkö Little: : M = X (Z+R) => Esim: M = 12, X = 0.5 vast/s, Z = 20 s => R = 4 s R = M/X Z Pakkovuolaki (forced flow law) Esimerkki: kyselyjärjestelmä V =1 X 0 V V dk1 dk1 dk2 V dk2 T mittausaika C0 vastausten lkm vastaustiheys Ci töitä laitteella i Työn n käyntisuhde k (visit( ratio) ) laitteella i: Vi Xi läpäisy = Ci C (laite / C0C Xi/X i) / = Ci/CC /C0 = Vi V => Xi = ViV = Ci / T ~ vuon nopeus; {Vi} } ~ vuon jakautuminen verkkoon Kysely Vdk = 20 Sdk = 25 ms Oletettu käyttötilanne aktiivisia käyttäjiä M = 25 miettimisaika Z =18 s levyn käyttöaste Udk = 0.5 R = 25/1-18 = 7 s R = Mää? ääritelm R = M/ Z =? Xi=Vi => =XX =Xi/Vi Xi=Ui/Si => = X = Ui/( U/(ViSi) = 0.5 / (20*0.025) = 1 ritelmä: ViSi = Di D (demand) 4

Moniluokkainen työkuorma Oletus edellä: työt ovat tilastollisesti samanlaisia (kuorman töitä mallinnetaan keskiarvotyöllä ). Moniluokkainen kuormamalli: kuorma muodostuu keskenään erilaisista luokista, kunkin luokan työt ovat sisäisesti samanlaisia Esimerkkejä pankkiautomaatti: saldokyselyt / setelinostot tietoliikenne: kuittaukset / kyselyt / tekstitiedoston siirto / videokuvan siirto www-selaus: kyselyt / vastaukset Syitä moniluokkaisuudelle Perussyy: heterogeenisyyden hallinta Töiden erilaiset resurssinkäyttöprofiilit Kuorman saapumiskäyttäytymisen erilaisuus: avoin tai suljettu luokka Erilaisilla työtyypeillä erilaiset suorituskykyvaatimukset (kysely / päivitys / ylläpito) Erilaisilla työtyypeillä erilaiset kasvuennusteet Heterogeenisyys ajan yli kukin homogeeninen periodi mallinnetaan erikseen (esimerkiksi vuorokaudenajat: ruuhka / normaali / kevyt ) Esimerkki: kaksi työluokkaa (1) Kyselyjärjestelmä päätteitä M = 40 miettimisaika Z = 15s vastausaika R = 5s Levyn käyttö Sdk = 40 ms, Udk = 0.9 kyselyt: Vdk = 10 erätyöt: V dk = 5 Kyselyt Erätyöt X 0 Eräty työt: t: X 0 =? jos X 0 -> > 3 niin R -> >? Lähde: Denning, Buzen, The Operational Analysis of ; ACM CS 10 (3), Sept. 1978 Esimerkki: kaksi työluokkaa (2) Kyselyjärjestelmä päätteitä M = 40 miettimisaika Z = 15s vastausaika R = 5s Levyn käyttö Sdk = 40 ms, Udk = 0.9 kyselyt: Vdk = 10 erätyöt: V dk = 5 Levy kyselyjärjestelmä = M/(Z+R) = 40/20 = 2 kys/s kyselyjen läpäisy kokonaisläpäisy isy erätöiden läpäisy X 0 Xdk = Vdk = 20 noutoa/s Xdk + X dk = Udk/Sdk = 22.5 noutoa/s X dk = 22.5-20 = 2.5 noutoa/s Koko järjestelmä: : erätöiden läpäisy X 0 = X dk/v dk = 0.5 työtä/s Pelkistetyt välineet antavat toisinaan virheellisen tuloksen Otettava huomioon erilaisia todennäköisyysjakaumia ja skedulointitapoja Teoriaa: suorituskykyanalyysin kurssi kurssikirjoijeen Erilaisia arviointityökaluja saatavilla HJ-kurssilla ad hoc arvioita peruskaavojen taso riittää tuomaan esiin oikeat kysymyskohdat 5