Hukommelseshierarki. 16/3 cache 7.1 7.2. 23/3 virtuell hukommelse 7.3 7.5. in 147, våren 1999 hukommelseshierarki 1



Like dokumenter
ytelsen til hukommelseshierarkier

dynamiske data dynamiske data statiske data program dynamiske data statiske data reservert program dynamiske data statiske data reservert program

Innhold. Oversikt over hukommelseshierakiet. Ulike typer minne. Innledning til cache. Konstruksjon av cache Hukommelseshierarki-1 1

Dagens temaer. Mer om cache-hukommelse (kapittel 6.5 i Computer Organisation and Architecture ) RAM ROM. Hukommelsesbusser

Dagens temaer. Cache (repetisjon) Cache (repetisjon) Cache (repetisjon)

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache

Innhold. Virtuelt minne. Paging i mer detalj. Felles rammeverk for hukommelseshierarki Hukommelseshierarki-2 1

Dagens tema. Flere teknikker for å øke hastigheten

bruksområder og oppbygging om cache-hukommelse (kapittel 6.5 i Computer Organisation Dagens temaer and Architecture ) ROM RAM

IN1020. Minnehierarki

Dagens temaer. Dagens emner er hentet fra Englander kapittel 11 (side ) Repetisjon av viktige emner i CPU-design.

Cache (repetisjon) Cache (repetisjon) Cache (repetisjon) Dagens temaer. CPU Cache RAM. om cache-hukommelse (kapittel 6.5 i Computer Organisation

INF2270. Minnehierarki

Oppsummering av digitalteknikkdelen

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Internminnet. Håkon Tolsby Håkon Tolsby

4/5 store parallelle maskiner /4 felles hukommelse in 147, våren 1999 parallelle datamaskiner 1. når tema pensum.

Internminnet. Håkon Tolsby Håkon Tolsby

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Forelesning Hurtigbuffer Kap 4.5

Oppgave 1 JK-flip-flop (Total vekt 20%)

Kapittel 7, Minne RAM DIMM, SIMM ROM, PROM, EPROM, EEPROM FLASH DIM SUM. Cache Virtuelt minne

hvor mye hurtigminne (RAM) CPU en kan nyttiggjøre seg av. mens bit ene betraktet under ett kalles vanligvis et ord.

Input/Output. når tema pensum. 13/4 busser, sammenkobling av maskiner /4 PIO, DMA, avbrudd/polling

Seksjon 1. INF2270-V16 Forside. Eksamen INF2270. Dato 1. juni 2016 Tid Alle trykte og skrevne hjelpemidler, og en kalkulator, er tillatt.

Dagens tema. Mer om cache-hukommelse Kapittel 6.5 i Computer Organisation and Architecture ) RAM. Typer, bruksområder og oppbygging 2008 ROM

kan adressere et større område som RAM enn det som faktisk er tilgjengelig. Siden data kan plasseres i RAM og/eller på harddisken brukes begrepet

Dagems temaer. kapittel 4 i Computer Organisation and Architecture. av CPU: von Neuman-modellen. Transfer Language (RTL) om hurtigminne (RAM)

Oppsummering digital-teknikk, teknikk, INF2270

Innhold. Introduksjon til parallelle datamaskiner. Ulike typer parallelle arkitekturer. Prinsipper for synkronisering av felles hukommelse

Litt om Javas class-filer og byte-kode

Hvorfor lære om maskinvare*?

Generelt om permanent lagring og filsystemer

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

I dag. Minne typar Minne mot bussar (fysisk grensesnitt generelt) Meir buss

INF2270. Datamaskin Arkitektur

Internminne og Cache. RAM = Random Access Memory

Singletasking OS. Device minne Skjerm minne. Brukerprogram. Brukerdata/heap. Stack. Basis for flerprosess-systemer.

Oppgave 8.1 fra COD2e

Kap. 8 del 1 kodegenerering INF5110 Vår2007

! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:

Innhold. Oppgave 1 Oversettelse (vekt 15%)

INF2270. Datamaskin Arkitektur

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

Pensumoversikt - kodegenerering. Kap. 8 del 1 kodegenerering INF5110 v2006. Hvordan er instruksjonene i en virkelig CPU? Arne Maus, Ifi UiO

Dagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

UNIVERSITETET I OSLO

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

F9 IN Minnesystemer og cache. Yngve Hafting,

Dagems temaer INF ! Fra kapittel 4 i Computer Organisation and Architecture. ! Kort om hurtigminne (RAM)

Tildeling av minne til prosesser

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

TDT4258 Eksamen vår 2013

Kap. 8 del 1 kodegenerering INF april, 2008

Tildeling av minne til prosesser

Fakultet for informasjonsteknologi, Oppgave 1 Flervalgsspørsmål ( multiple choice ) 15 %

AVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs. Torsdag 29. November 2007 Kl

Vi anbefaler at du setter deg litt inn i maskinen på forhånd. Det er en DELL Optiplex 620.

Fakultet for informasjonsteknologi, Oppgave 1 Flervalgsspørsmål ( multiple choice ) 15 %

P1 P2 P3 P1 P2 P3 P1 P2. OS gjør Contex Switch fra P1 til P2

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)

Teoretisk minnemodell Flyktig minne - SRAM -DRAM Ikke-flyktig minne -ROM -EPROM - EEPROM Flash

Del 1 Setup - BIOS Oppgaver: 1. Hva slags CPU har maskinen? Beskriv de tekniske egenskapene ved CPU en.

hukommelse (kapittel 9.9 i læreboken) Dagens temaer Input-Output INF 1070

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

Maskinvaredelen av INF 103: oversikt og innhold (1)

! Sentrale begreper er adresserbarhet og adresserom. ! Adresserbarhet: Antall bit som prosessoren kan tak samtidig i én operasjon

En harddisk består av et lite antall plater av et magnetisk materiale.

Løsningsforslag til eksamen i INF2270

Del 2. Bak skallet. Avsette minne til et spesifikt OS Teste harddisk under oppstart Sette opp system logger

Del 4 Noen spesielle C-elementer

TDT4110 Informasjonsteknologi grunnkurs: Eksempler. Mangekanter

Forelesning Instruksjonstyper Kap 5.5

UNIVERSITETET I OSLO

Dagens temaer. Virtuell hukommelse (kapittel 9.9 i læreboken) Pentium-arkitekturen i mer detalj INF 1070

Minnehåndtering i operativsystemer

Hva er datamaskinarkitektur?

Dagens temaer. Virtuell hukommelse. Sidetabell. Virtuell hukommelse (forts.)

Datamaskinens oppbygning

TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose

Flerveis søketrær og B-trær

Dagens temaer. Praktisk anvendelse: Satellittkommunikasjon. eksempler på bruk av assembler/c/arkitektur teknikker for å øke hastigheten

Dagens temaer. Sekvensiell logikk: Kretser med minne. D-flipflop: Forbedring av RS-latch

Martin Olsen, Lars- Petter Ahlsen og Jon- Håkon Rabben

Optimalisering av flyttallsintensive programmer. Bjørn Lande

Memory Access) Figure: DMA kommuniserer med disk-controlleren og sørger for at det OS ønsker blir kopiert mellom harddisken og internminnet.

Tonje Thøgersen, Daniel Svensen Sundell, Henrik Smedstuen

En harddisk består av et lite antall plater av et magnetisk materiale.

Filsystemet fra innsiden

TDT4105 Informasjonsteknologi, grunnkurs

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er

UNIVERSITETET. Indeksering. Konvensjonelle indekser B-trær og hashing Flerdimensjonale indekser Hashliknende strukturer.

Eksamensoppgave i TDT4258 Energieffektive datamaskinsystemer

Eksamen INF2270 våren 2018

Operativsystemer og grensesnitt

AVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs Løsningsforslag. Torsdag 29. November 2007 Kl

Forelesning 9. Registre, tellere og minne

Forelesning 5. Diverse komponenter/større system

Transkript:

Hukommelseshierarki når tema pensum 16/3 cache 7.1 7.2 23/3 virtuell hukommelse 7.3 7.5 in 147, våren 1999 hukommelseshierarki 1

Tema for denne forelesningen: en enkel hukommelsesmodell hukommelseshierarki cache in 147, våren 1999 hukommelseshierarki 2

Hukommelse for ett bit C Q D in 147, våren 1999 hukommelseshierarki 3

Hukommelser 8 bit adresse read/ write enable data in data out Statisk RAM < > Dynamisk RAM in 147, våren 1999 hukommelseshierarki 4

Ytterpunkter: Hukommelseshierarki billig og langsom (mye) [DRAM] dyr og rask (lite) [SRAM] Slike komponenter arrangeres i et hierarki, sammen med CPU, disk o.l. CPU cache hovedhukommelse disk Målet med et hukommelseshierarki er å oppnå hastigheten til det høyeste (raskeste og minste) hukommelsesnivået med kapasiteten til det laveste (største og langsomste) hukommelsesnivået. Dette aldri helt, men det går nesten. in 147, våren 1999 hukommelseshierarki 5

Aksesstider access time "sgi_nipling.res" 500 Aksesstider varierer med en faktor 10 0 1M 256K 64K set size 16K 4K 1K 4 16 256 4K stride in 147, våren 1999 hukommelseshierarki 6

Kombinere rask og langsom hukommelse bare rask hukommelse er for dyrt, men vi kan ha så mye vi har råd til den raske hukommelsen kan f.eks. plasseres nederst i adresserommet, men er det alltid gunstig? kanskje vi ofte ønsker at den raske hukommelsen skal ligge et annet sted kanskje dette faktisk varierer fra program til program! men å flytte rundt på en bit med hukommelse er vanskelig ettersom hukommelsen er noe fysisk som sitter fast på et kretskort! kan man finne en «plassering» av den raske hukommelsen som tilpasser seg programmet? langsom rask in 147, våren 1999 hukommelseshierarki 7

Bruksmønster Vi bruker samme bok flere ganger 1) samme materiale 2) annet materiale i samme bok Lokalitet deles inn i to typer; lokalitet i tid og lokalitet i rom. Lokalitet i tid betyr at det er stor sannsynlighet for at elementer som allerede har blitt brukt vil bli brukt om igjen i nær fremtid. løkker Lokalitet i rom betyr at det er stor sannsynlighet for at elementer i nærheten av elementer som allerede har blitt brukt vil bli brukt i nær fremtid. elementer i datastrukturer in 147, våren 1999 hukommelseshierarki 8

Bibliotek < > hukommelse British Library BIBLIOTEK CPU cache memory sluse CPU cache hovedhukommelse BIBLIOTEK British Library in 147, våren 1999 hukommelseshierarki 9

Biblioteksreferanser Anta at 093702658 545 er en unik identifikasjon av starten på «The Basics of Cache» i læreboka. I bibliotekssammenhengen bryter vi dette opp i 3 deler: 1) 0937026 er «nøkkelen» som bekrefter treff 2) 58 er entydig angivelse av hvor i hylla vi leter 3) 545 som er siden i boka vi er interessert i 0937026 58 545 På en lignende måte blir adresser i datamaskinen delt opp for å aksessere cache. in 147, våren 1999 hukommelseshierarki 1 0

Noen begreper blokk: enheten med lagerceller som utveksles mellom to nivåer hit: miss: når en aksess finner det den leter etter i det øvre nivået når en aksess ikke finner det den leter etter i det øvre nivået hit rate: miss rate: hit time: andelen av aksesser som blir funnet i det øvre nivået 1.0 hit rate tiden det tar for å aksessere det øvre nivået, inkludert tiden for å avgjøre at det var hit miss penalty: tiden det tar å erstatte en blokk i ett nivå med en blokk fra nivået under, pluss tiden for å tilfredsstille aksessen in 147, våren 1999 hukommelseshierarki 1 1

Datamaskinen bruker adresser Disse kan vi bryte opp i nøkkel, posisjon i hylla og sidenummer, men nå heter de istedet 1) tag 2) index 3) offset adresse tag index offset Index brukes for å bestemme hvor i cachen dataene hører hjemme. Tag brukes for å sjekke at vi fant det vi lette etter. Offset brukes for å plukke ut en mindre del hvis vi fant det vi lette etter. Enhetene som håndteres i cachen er alle like store! De kan være så små som den enheten arkitekturen bruker som alignment (MIPS: 32 bit), eller de kan være større. Disse enhetene blir omtalt som cachelinjer. På grunn av at adresser er binære tall, så er det enkelt å dividere med potenser av 2. Derfor er alle størrelser potenser av 2. adresserommet in 147, våren 1999 hukommelseshierarki 1 2

Direct mapped cache line innkommende adresse dekoder sjekk og valg (mux) in 147, våren 1999 hukommelseshierarki 1 3

2 eksempler: cache line innkommende adresse dekoder sjekk og valg (mux) Størrelse: 64 Kbyte (fig. 7.8) Organisering: direktemappet med ett ord pr. linje byte offset : offset : index : antall cachelinjer : Størrelse: 64 Kbyte (fig. 7.10) Organisering: direktemappet med fire ord pr. linje byte offset : offset : index : antall cachelinjer : in 147, våren 1999 hukommelseshierarki 1 4

Set associative cache line innkommende adresse dekoder sjekk og valg (mux) in 147, våren 1999 hukommelseshierarki 1 5

Full associative cache line innkommende adresse sjekk og valg (mux) in 147, våren 1999 hukommelseshierarki 1 6

cache line innkommende adresse dekoder sjekk og valg (mux) in 147, våren 1999 hukommelseshierarki 1 7

Ytelse for forskjellige organiseringer av cache 15% 12% 9% Miss rate 6% 3% 0% One-way Two-way Four-way Eight-way Associativity 1 KB 16 KB 2 KB 32 KB 4 KB 64 KB 8 KB 128 KB in 147, våren 1999 hukommelseshierarki 1 8

Mer enn én prosess! stakk 7FFFFFFF stakk dynamiske data statiske data program reservert 10000000 400000 dynamiske data statiske data program reservert in 147, våren 1999 hukommelseshierarki 1 9