3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Ne postoji fiksna granica izmedju particija. H:=H 1 +H memorija) 0 memorija 1(normalizovana na 1) S1 S2 H1 S3 S4 H2 Sn Hk +H 2 + + + +H k ukupan slobodan prostor (slobodna Da bi se ubacio sledeći sedeć posao treba da postoji oj rupa ne manja od veličine tog posla Algoritmi za punjenje: FIRST FIT i BEST FIT. Po BEST FIT algoritmu se posao smešta u najmanju rupu u koju može da stane, duž memorije ravnomerno razbacani poslovi (stvara se ravnomerna raspodela šupljina). 1
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Po FIRST FIT algoritmu krenemo redom i posao se smešta u prvi odgovarajuću zonu (poslovi su koncentrisani na početku). Knuth-ovo pravilo: broj zauzetih segmenata u memoriji je 2x veći od broja rupa k /2 utvrđeno posmatranjem, a ne k n/2 analitički Dolazak novog posla javlja se sa jednakom verovatnoćom kao i dogadjaj dj j odlaska posla iz memorije. Rezultat t je da se u 50% slučajeva desno od posmatranog posla nalazi rupa, a u drugih 50% desno od posla je posao. 2
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Kako je prosečna č veličina programa (job-a), a Prosečna č veličina rupa H, imamo da je: ns + kh = 1 s ns(1 + kh/ns) = 1 k/n=1/2 n s (1+c/2)=1 (Knuth) n s /1=U=2/(2+c) Ū(c)=2/(2+c),0<c<1 c = H/s - odnos veličina rupa i posla, 0<c<1 iskorišćenje, tj veličina zauzete memorije u memoriji veličine 1. n s - ukupno iskorišćeni deo memorije 3
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Idealan slučaj bi bio c=0 (nema rupa) 100% iskorišćenje, a mora biti 0 < c < 1 inače bi rupe veće od poslova bile popunjene. Za c=1 Ū(c)=2/3=0.667, za c=0.5 Ū(c)=2/2.5=0.8 ) 2/25 08, tako da je za 0.5<c<1 <1 0.667< Ū<0.8 => gubitak memorije je između 1/5 i 1/3 4
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Analiza Dinamičkih ičkih particija ij (T. Betteridge &B. Randell) Pretpostavke: memorija je podeljena na blokove (memorijske jedinice) iste veličine kojih ima M veličina programa je 1 ili 2 ili 3 ili ili M jedinica ( 1 S M ) i svaka veličina je podjednako verovatna. Program se smešta isključivo u uzastopne jedinice. vreme boravka posla u memoriji je eksponencijalno raspodeljeno: Pr[t x]=1 - cˣ, c=const 2 posla nikada ne završavaju istovremeno, nikada se ne dešavaju 2 događajađ aja odlaska iz memorije u isto vreme 5
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Obrada se vrši po FCFS algoritmu, particije nisu relokatibilne(ni ništa se od programa ne pomera, stanje se ne menja) b r o j s t a nj a 1 2 3 (1) (2) (3) (4) ovo analiziramo -veličina 1 -vel. 2... vel. 3 Svaka od veličina programa je podjednako verovatna U pitanju je slučaj do M blokova (veličina memorije): M=1, 2, 3, 4, 5, 6, 7, 8 vel. mem n= 1, 4, 12, 33, 88,232,609,1596 -br stanja Događaj u sistemu je odlazak/dolazak, stanja su 1,2,3,4 za slučaj 2 bloka Ako je veličina memorije=1 onda je program veličine 1 6
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) Broj stanja n u slučaju memorije sa M blokova je n=f 2M -1 ~ M 0.72 (2.6) Fibonačijevi brojevi: f 0 =f 1 =1, f k =f k-1 + f k-2 Veličina memorije=2 4 stanja; veličina memorije=3 12 stanja Posmatramo slučaj sa dva bloka (4 stanja). Stanja 1 i 3 su stanja u kojima je jedna particija prazna a to znači dačeka veliki posao B (big), jer bi se mali S (small) ubacilo u slobodnu particiju. ij S ib su jednako verovatni. U stanje 1 se prelazi: iz 2 ode drugi posao a sledeći posao koji dolazi je B iz 4 ode B, zatim dolazi S 7
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) U stanje 2 se prelazi: iz 1 i 3 ne može jer posle završetka posla čekaju B iz 2 može jer ako ode S i dodje S opet je u 2 iz 4 može ako ode B a dolaze za redom dva S posla U stanje 3seprelazi: iz 2 ode prvi a dolazi B U stanje 4 se prelazi: iz 4 u 4 ako dolaze B pa B iz 1 i 3 kad S završi upada B koji čeka (bezuslovno) 8
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) ¼ ¼ ½=¼+¼ Verovatnoća pojave svake veličine ¼ posla je podjednaka i iznosi 1/M p 1 =¼ p 2 +¼p 4 ; p 2 =½ p 2 +¼p 4 ; ¼ p 3 =¼ p 2 ; p 4 =p 1 +p 3 +½p 4 1 2 3 1 4 1 p 1 + p 2 + p 3 +p 4 =1 ¼+¼=½ ¼ p 1 =3/16 p 2 =1/4 p 3 =1/16 p 4 =1/2 9
3.2 iskorišćenje kod sistema sa Dinamičkim particijama za memoriju sa dve jedinice (Dinamičke i relokativne particije) iskorišćenje može biti ½ ili 1 pa je srednje iskorišćenje: M=2 : Ū=p 1 U 1 +p 2 U 2 +p 3 U 3 +p 4 U 4 =½p 1 +p 2 +½p 3 +p 4 =7/8=0.875 M=8, za dinamičke particije uniformne veličine, istom računicom dobija se: Ū=0.739, što je manje nego sa dve particije M=8 (za relokatibilne particije, po Betteridge-ovoj analizi): Ū= 0.762 Funkcija srednjeg iskorišćenja u zavisnosti od M Za relokatibilne particije uniformne dužine postoji konačna formula (Betteridge): 1 0.718 1 M+ 1 U = (1+ 1/M) 2 1/M lim U = e 2 0.718 M 10
3.3 iskorišćenje kod sistema sa statičkim stranicama Metoda sa statičkim stranicama (Page Partition) (Nevirtuelna tehnika) Ne spada u virtuelne tehnike. Ceo program mora biti u memoriji da bi se program izvršavao, raspored stranica može biti različit i zbog toga su efekti ove tehnike slični relokatibilnim particijama, jedino što u odnosu relokatibilne particije postoji dodatni gubitak na polupopunjenu (u proseku) poslednju stranu (interna fragmentacija). N-broj stranica, M -veličina memorije, n avr - srednji stepen multiprogramiranja prosečan broj procesa u operativnoj memoriji 11
3.3 iskorišćenje kod sistema sa statičkim stranicama M/N -veličina jedne stranice, M/(2 N) - veličina polovine stranice, n avr M/(2 N) - gubitak na polovini stranice (ovo je razlika u odnosu na relokativne particije gde nema interne fragmentacije). Primer: N 100, n avr <10, gubitak: W=0.5 n avr M/N 5% M ili manje, i toliko treba odbiti od slučaja relokatibilne particije 12
3.4 Model jednakih veličina Neka je veličina memorije normalizovana na 1 Ako iskorišćeni deo memorije u proseku iznosi M kor (M kor <1) iakoje prosečan stepen multiprogramiranja k, tada je prosečna veličina programa x=m kor /k Ovaj model pretpostavlja da su svi programi iste (prosečne) veličine 13
3.4 Model jednakih veličina 14
3.4 Model jednakih veličina 1 1 1 U( x) = x= k x, x x k+ 1 k 1 k Srednja linija ij svakog od trapeza iznosi i 1 + 2 k + 1 1 1 1 k 1 1 Visina svakog trapeza iznosi, a površina 1+ k k+ 1 2 k+ 1 k k+ 1 1 1 1 k 1 1 1 k 1 U= U( xdx ) = U( xdx ) = 1+ = 1 k= 1 2 k + + = 1 k k+ 1 2 k= 1 k+ 1 k ( k+ 1) 0 0 2 2 1 1 1 1 π π = +... 1 1 0.8225 2 = = + = = 2 k= 1 k ( k+ 1) k= 1( k+ 1) 2 6 12 15
3.5 Iskorišćenje memorije za slučaj virtuelne memorije organizovane u stranice (Virtuelna memorija Straničenje na zahtev Demand Paging) O.S Korisnički programi M PMT M PROG k x PMT 1 PMT2 PMTN PAGE0 PAGE 1 PAGE 2... PAGE N Korisnički programi su upodeljeniu u stranice. PMT(Page Map Table) tabele preslikavanja, smeštene u deo rezervisan za OS O.S. N ukupan broj stranica u fizičkoj operativnoj memoriji. Za svaku stranicu postoji po jedan ulaz u tabelu. Blok u koji se može smestiti jedna stranica se naziva page frame. 16
3.5 Iskorišćenje memorije za slučaj virtuelne memorije organizovane u stranice (Virtuelna memorija Straničenje na zahtev Demand Paging) M PMT deo OS O.S., tačnije deo memorije u koji se smešta PMT tabela preslikavanja stranica k je zauzeće memorije za jedan ulaz u PMT, veličina jednog elementa u PMT; M je raspoloživa memorija, x je veličina jedne stranice n avr -srednji stepen multiprogramiranja, p - prosečna veličina aktivnog dela programa u memoriji: p=m PROG /n avr W - izgubljeni, neiskorišćeni deo memorije (deo stranice i PMT) deo poslednje W= M PMT +n avr x/2, gde je M PMT gubitak na tabele, n avr x/2 gubitak na popunjenost poslednje stranice (svaki program ima po 1 polupopunjenu stranicu na kojoj se gubi u proseku x/2 /2) 17
3.5 Iskorišćenje memorije za slučaj virtuelne memorije organizovane u stranice (Virtuelna memorija Straničenje na zahtev Demand Paging) Šta ako se poslednja stranica (polupopunjena) ne nalazi u memoriji? Poslednji izraz treba korigovati uključujući verovatnoću da stranica bude u memoriji. 1/R - verovatnoću da je stranica u memoriji. Gubitak sa korekcijom: W= M PMT + +n avr x/2 2 1/R 18
3.5 Iskorišćenje memorije za slučaj virtuelne memorije organizovane u stranice (Virtuelna memorija Straničenje na zahtev Demand Paging) M PMT =N k gde je N broj M PROG =N x M= M PMT broj strana, a k veličina ulaza u PMT N x, gde je x veličina jedne stanice PMT +M PROG=( sada imamo: W= k M/( /(k+x)+n avr dw/dx= -k M/x² Tražimo minimalnu PROG =(k+x k+x) N M PMT =k N=k M/( /(k+x k+x) i avr x/ x/2 1/R k M /x²+n avr minimalnu vrednost W min za x opt avr /2R k M/x+n avr opt (dw avr x/ dw/dx=0) : x/2r X opt = 2 R k M n avr W = 2 k M n /R min avr 19
3.5 Iskorišćenje memorije za slučaj virtuelne memorije organizovane u stranice (Virtuelna memorija Straničenje na zahtev Demand Paging) Ukupan gubitak je minimalan kada je gubitak na ½ stranice (interna fragmentacija) jednak gubitku na PMT. k M/xopt= n avr xopt/2r gubici na polovinama stranica i na PMT su jednaki. Za x= 0.5, 1, 2, 4 kb, k=4b i M=200 kb imamo: x[b] n avr 2 4 6 8 10 12 512 0.99 0.987 0.985 0.982 0.98 0.977 1024 0.987 0.982 0.977 0.976 0.976 0.962 2048 0.982 0.972 0.962 0.952 0.942 0.932 4096 0.972 0.952 0.932 0.912 0.892 0.872 Globalno iskorišćenje je oko 95% Iskorišćenost: U=(M-W)/M=1 - k/x - (n avr x)/(2 M R) )( ) 20
3.6 Pregled iskorišćenja memorije za različite tehnike Globalno iskorišćenje memorije 50 60 70 80 90 100 l l l l l l monoprogramski sistemi 50% Globalno iskorišćenje memorije (GMU) statičke particije 60% dinamičke particije 75% relokativne particije 85% statičke stranice 80% DEMAND PAGING (virtuelna memorija) DEMAND SEGMENTATION DEMAND - PAGED SEGMENTATION 90% 95% 95% Tehnika upravljanja memorijom (MMT) 21
4. Performanse operativne memorije (iskorišćenost i brzina) 1. veličina memorije (size), jedinice: Bytes/Words/Bits (B/w/b) 2. vreme pristupa (access time): a) T r (read time)-vreme čitanja vreme koje protekne od trenutka idavanja zahteva za čitanje do trenutka raspoloživosti podatka u baferu b) T w (write time)-vreme upisivanja vreme koje protekne od trenutka idavanja zahteva za upis do trenutka sledeće moguće operacije procesora 3. alternativno: T r najkraci vremenski interval izmedju 2 uzastopna čitanja jedne iste memorijske lokacije. Najveci deo vremena T r predstavlja interval od zadavanja impulsa do završetka prenosa iz lokacije u bafer registra (značajnijeajnije zbog mogućnosti ponavljanja istog čitanja). T w najkraći mogući vremenski interval između 2 uzastopna upisa u istu memorijsku lokaciju. 22
4. Performanse operativne memorije (iskorišćenost i brzina) 4. memorijski ciklus (cycle time) je najkraće vreme između u2uzastopna uzastopna čitanja ili pisanja u istu memorijsku lokaciju. Ne možemo ga koristiti za poređenjeenje različitih memorija zbog različite dužine podataka. T c =(T r +T w )/2 c r w 5. dužina podatka koji se dohvati u jednom pristupu W (Width): broj bajtova (B), reči (w) ili bitova (b) koji se dohvati u jednom pristupu. 6. širina opsega memorije B (BandWidth BandWidth). Ne može se koristiti za poređenje enje kod višestrukuh pristupa. B mem =W/T c [b/μs] Na primer: W=32 b i T c=0.4 μs (mikro sekundi) B=80 b/μsμ 7. brzina memorije vmem (memory transfer rate) predstavlja na drugi način zapisanu širinu opsega: v mem = W/T c c[ [MB/s] = B mem/8 23
4.1 Sistem sa više memorijskih modula Pretpostavka: sistem je sa jednom magistralom: Efektivna Adresa Adresna magistrala Mar 1 Mar 2 Mar 3 Mar 4 Selektor Adrese Modula Memorijski Kontroler Blok #1 Mbr 1 Blok #2 Blok #3 Blok #4 Mbr 2 Mbr 3 Mbr 4 Blok Memorije upravljanje CPU dužina podataka w, brzina protoka v mem 24
4.2 Paralelni pristup memoriji Delimo memoriju na blokove. U slučaju da vise procesora traži pristup istom bloku javljaju se redovi čekanja. S(m) je faktor simultanosti, tj. broj memorijskih blokova koji su istovremeno aktivni. S(m) m-broj memorijskih blokova Efektivna širina opsega memorije: m B=S(m) W/T c, 1 S(m) m Neka se generi eneriše sledeći niz adresa, odnosno njihovih blokova (pretpostavka p je da su generisane adrese nezavisne i da se svakom od blokova sa pristupa ravnomerno): b1, b2,, bm, b, bm+1,,, bi je iz skupa {1,,m} 25
4.2 Paralelni pristup memoriji Blok#1 Blok#2 Blok#3 Blok#4 m=4 MAR 1 MBR 1 MAR 2 MBR 2 MAR 3 MBR 3 MAR 4 MBR 4 CPU 1 CPU 2 IOP 1 IOP 2 adresa podatak adresa podatak adresa podatak Komutaciono polje 26
4.3 Helermanova Formula 2CPUi 2IOP(npr (npr. DMA) generišu niz blokova b:= b1, b2,, m+2, pri čemu b i {1,2,,m}, i=1, 2, 3, bm, bm+1, bm+2 (m-broj memorijskih blokova, n-broj procesora). Pretpostavka je da su adrese međusobno nezavisne pa je pristupanje blokovima ravnomerno. verovatnoća da sledeća adresa ne bude ista kao prethodna: P [b2 b1]=(m r ]=(m-1)/m, b 1 - prva generisana adresa, b 2 -druga generisana adresa. Analogno imamo: P [b r 3 b 2, b 3 b 1 b 2 b 1 ]=(m-2)/m P r [b k b i ; za svako i, 1 i<k, 1 k m]=(m-(k-1))/m P r [b k+1 b i ; za svako i, 1 i k, 1 k m]=(m m]=(m-k)/m 27
4.3 Helermanova Formula verovatnoća suprotnog događaja aja (k+1-va adresa je već generisana ranije),,b k }] = k/m, k=1, 2,..., m ranije): P r [b k+1 {b 1,b 2,, verovatnoća da se posle k pristupa naredni ponovio, tj. da je k memorijskih blokova aktivno (simultani i pristup it u k blokova istovremeno): p(k)= (m-1)/m (m-2)/m (m-(k-1))/m 1))/m k/m= k (m 1)! k)! k m (m Srednji faktor simultanosti, tj. srednji broj modula koji istovremeno rade: m m 2 k S(m) k p(k) (m 1)! k /(m (m k)!) = = k = 1 k = 1 28
4.3 Helermanova Formula Helerman dao pibližan približan obrazac: ac S(m) m 0.56 Primer izračunavanja S(m) po tačnoj i približnoj formuli: S(2)=1 1/2+2 1/2=1.51.5 ; S(4)=71/32=2.222.22 ; 2 0.56 =1.47 ; 4 0.56 =2.17 Aproksimacija je relativno gruba, ali je obrazac jednostavan Za 4 memorijska bloka je pod ovim uslovima oko 2puta brži pristup Knuth (Donald Ervin Knuth) : S(m) 1.253 m 0.28; prva aproksimacija 3/4 S(m) = ( π m) / 2 1/ 3 + 1/12 π/ (2 m) 4 / (135 m) + o(m ) druga aproksimacija 29
4.3 Helermanova Formula Mana tačne č formule i poslednjeg aproksimativnog obrasca je prevelika složenost. Dolazimo do (EŠOM): do efektivne širine ine opsega memorije B =m 056 W/T m 1 B mem =m 0.56 W/T c, m 1 HELERMANOVA FORMULA 30
4.4 Barnet-Kofmanova formula Ovo je proširenje Helermanove formule koje uzima u obzir svojstva izvršenja programa na nivou bazičnih blokova (posmatra slučajeve kada postoje skokovi u programu) Odnosi se na broj instrukcija koje se istovremeno mogu čitati iz memorije. U slučaju instrukcija bez skokova, zahvata se onoliko reči koliko ima blokova (možemo istovremeno zahvatati različite ite instrukcije iz 4 bloka u našem slučaju). U slučaju pojave skokova efektivna širina operativne memorije se smanjuje, tj. smanjuje se broj jednovremeno zahvaćenih instrukcija. Isto je i u slučaju grananja (uslovnih skokova), smanjuje se srednji faktor simultanosti..ešomjefunkci unkcija broja instrukcija sa skokovima na neuzastopnu adresu. 31
4.4 Barnet-Kofmanova formula qjeverovatnoća skoka na neuzastopnu adresu (q=broj instrukcija sa skokovima/ukupan broj mašinskih instrukcija). Npr, ako je q=0.1 imamo skok u svakoj desetoj adresi. Imamo sekvencu uzastopnih adresa b1, b2, memorijskih blokova kojima se pristupa, sa prosečnom dužinom 1/q sto je prosečan broj uzastopnih adresa (srednja dužina linearnog dela programa, bez skokova). r=1-q - verovatnoća instrukcija koje ne dovode do skoka (gustina instrukcije bez skokova). Posmatramo verovatnoću da niz instrukcija koje se mogu paralelno izvršavati ima dužinu k,, što znači da imamo k-1 instrukciju bez skoka, a da k-ta izaziva skok: 32
4.4 Barnet-Kofmanova formula p(k)=r k- 1 q, 1 k m-1 ; p(m)=r m-1 (najviše (najviše m-1 instrukcija ij bez skoka, a za m-tu nije bitno ukoliko imamo m blokova) m S(m) = k p(k) = q + 2rq + 3r q +... + (m 1) r q + mr k= 1 uvodimo smenu q=1-r 2 m 2 m 1 S(m) = 1 r + 2(r r ) + 3(r r ) +... + (m 1)(r r ) + mr = 1+ r + r +... + r 2 2 3 m 2 m 1 m 1 2 m 1 S(m)=(1-r m )/(1-r)=(1-(1-q) m )/(1-(1-q))= (1-(1-q) m )/q EŠOM: W(bits) - širina instrukcije, Tc(μs) trajanje memorijskog ciklusa 1-(1-q) m W B mem = q T c BARNET-KOFMANOVA FORMULA Burnett - Coffman 33
4.4 Barnet-Kofmanova formula Primer: q=0 0.1: S(2)=1 1.9, S(4)=3 3.44, S(8)=5 5.7, S(16)=8 8.15 15; lims(m) = m Granični slučajevi: S(1)=1 ; ; 1 S(m) m q 0 Odnos B-C formule i Helerman-ove formule: 1-(1-q) m m 0.56 = q q=? B-C Cjepreciznija preciznija, bolje sagledava realnost. Helermanova je jednostavnija i ne zahteva poznavanje programa. B-C je pogodna za primenu u instrukcijskim memorijama (one koje sadrže samo kod), npr. cache memorija za instrukcije. 34
4.5 Strekerova formula (procena brzine memorije) Pretpostavke su da imamo n procesora koji pristupaju memorijskim blokovima kojih ima m Svakom od blokova pristupa se nezavisno i ravnopravno (sa jednakom verovatno atnoće uniformna raspodela verovatnoće za pristupe blokovima). Verovatnoća da i-ti procesor pristupa j-tom memorijskom bloku: P Pr[i-ti proc. pristupa j-tom mem. bloku]=1/m ]=1/m, 1 i n, 1 j m verovatnoća suprotnog događaja, da i-ti procesor ne pristupa j- tom bloku: Pr=1-1/m. verovatnoća da je j-ti blok slobodan, tj. da mu niko ne pristupa: Pr[ r[j-ti blok slobodan]=(1 ]=(1-1/m) 1/m) n 35
4.5 Strekerova Formula (procena brzine memorije) Verovatnoća da je j-ti blok zauzet, tj. verovatnoća suprotnog događaja: Pr[j-ti blok zauzet]=1 ]=1-(1-1/m) 1/m) n SFS: S(m)=[1-(1-1/m) n ] m EŠOM : B mem =m [1-(1-1/m) n ] W/T c Strecker-ova formula Primer: n=4 procesora, m=2,4,6,8,, memorijskih blokova S(2)=1.875, S(8)=3.31, S(4)=2.73, S(16)=3.64 lims(m) = n lims(m) = m n m 36
4.5 Strekerova Formula (procena brzine memorije) Odnos Strekerove formule i Helermanove formule: m 0.56 = m [1-(1-1/m) n ] i ako je n(m)=log(1-m -0.44 )/Log(1-m -1 ) formule su istovetne t Primer: pronaći n(2), n(4), n(6), n(8) da postoji ekvivalentnost Strekerova i Helermanove formule: m=2 => n=1.93 m=4 => n=2 2.72 m=8 => n=3.83 m=16 => n=5.42 37
4.6 Hijerarhijska organizacija memorije Izračunavanje efektivne adresne -registri -cache -operativna mem. -disk -CD-ROM -magnetne trake Po smeštajnoj jedinici cena opada, a raste kapacitet strana (page) stranica nije u memoriji f- verovatnoća (page fault) Page# Adresa unutar stranice logička adresa Page Map Table PMT 1-f Block# Adresa unutar bloka fizička adresa MAR Asocijativna memorija 1-h h cache hit Cache memorija Operativna memorija tb tf tm MBR 38 cpu
4.6 Hijerarhijska organizacija memorije T Tc 3 =f t f +(1-f) f) T c, gde Tc -srednje 3 vreme pristupa it za tronivoovsku hijerarhiju: 2-nivovsku hijerarhiju gde je Tc srednje vreme pristupa za T c =h t b +(1-h) t m =t m [1-h (1-t b /t m )], t b <t m <t f W W 1 W B mem = = = H t m [1-h (1-t b /t m )] t m 1-h (1-t b /t m ) t m W/tm je polazna širina memorijskog opsega bez keš memorije 39
4.6 Hijerarhijska organizacija memorije Tipovi i lokalnosti: l vremenska velika verovatnoća da ce se u određenom enom vremenskom intervalu pristupati podacima kojima smo već pristupali u tom vremenskom intervalu prostorna velika verovatnoća da ako smo pristupili nekom podatku brzo ćemo pristupiti podatku koji mu je blizak po adresi (u istom bloku) procesorska odnosi se na multiprocesorske sisteme 40
4.6 Hijerarhijska organizacija memorije Presek tipičnih vremena pristupa i kapaciteta: Vreme: Kapacitet: 1-2 ns Registri 32-512 B 3-10 ns Cache (on chip) 1-512 kb 25-5050 ns Cache (off chip) 64-2048 kb 60-250 ns Operativna memorija 1MB 2GB 5-20 ms Disk 100MB 1TB 100-500 ms Tercijarna memorija (CD, DVD) 600 MB+ 1s-1010 min Trake nije limitirano 41