Dagens temaer. eksempler på bruk av assembler/c/arkitektur teknikker for å øke hastigheten. Organisation and Architecture )

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

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

Dagens tema. Flere teknikker for å øke hastigheten

Praktisk anvendelse: Satellittkommunikasjon

IN1020. Minnehierarki

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)

INF2270. Minnehierarki

Oppsummering av digitalteknikkdelen

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

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

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

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

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

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

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

Internminnet. Håkon Tolsby Håkon Tolsby

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

Internminnet. Håkon Tolsby Håkon Tolsby

Intel Core i7. Omid Mirmotahari 4

Del1: Setup: BIOS. 2. Hvor mye Internminne har den? 3GB DDR2

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

IN1020. Datamaskinarkitektur

Oppgave 8.1 fra COD2e

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

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

Intel Core i7. Omid Mirmotahari 4

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

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

Phu Pham Laboppgave 29. September 2015

Setup programmet brukes til å endre konfigurasjonen av BIOS og til å vise resultatene fra

Datamaskinens oppbygning

Oppsummering digital-teknikk, teknikk, INF2270

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

Lab oppgave gruppe 2 IT-ledelse (Jonas F, Robin PN, Aksel S, Magnus M, Erik I)

Hukommelseshierarki. 16/3 cache /3 virtuell hukommelse in 147, våren 1999 hukommelseshierarki 1

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

Datamaskinens oppbygning og virkemåte

Tonje Thøgersen, Daniel Svensen Sundell, Henrik Smedstuen

Oppgave lab. 2. Hvor mye Internminne har den? - Maskinen har 2GB internminne.

Maskinvaredelen av INF 103: oversikt og innhold (1)

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

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

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

Generelt om permanent lagring og filsystemer

Hvorfor lære om maskinvare*?

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

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

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

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

2. Hvor mye Internminne har den? Svar: 2GB

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

Kjenn din pc (Windows Vista)

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

TDT4160 AUGUST, 2008, 09:00 13:00

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

Operativsystemer og nettverk Løsningsforslag til eksamen Oppgave 1. a) Linux-kommando: java Beregn & b) Shellprogram:

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

Superbruker Prosjekt

Filsystemet fra innsiden

Tildeling av minne til prosesser

UNIVERSITETET I OSLO

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

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

Into da BIOS<3. Bak Skallet

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

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram.

IT Grunnkurs Nettverk 3 av 4

1)Gjør om desimal tallene til binære: a) 4 =0100. b) 17 = c) 34 = d) 128 = e) 255 =

Marius Rogndalen Karlsen, Informatikk Lab oppgave

Kjenn din PC (Windows 7)

Innhold. Oppgave 1 Oversettelse (vekt 15%)

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til:

Minnehåndtering i operativsystemer

Patrick Fallang (Dataingeniør) Lab Oppgave: Kjenn Din Egen PC (XP)

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

Scheduling og prosesshåndtering

Dagens temaer. Dagens emner er hentet fra Englander kapittel 10 (side ) Mer om adresseringsmodi. RISC og CISC-prosessorer.

Tildeling av minne til prosesser

UNIVERSITETET I OSLO

Obligatorisk oppgave 1: Regneklynge

Laboppgave. Sondre Gulichsen, Li Lisan Linder. 1. Hva slags CPU har maskinen? Beskriv de tekniske egenskapene ved CPU en.

Kjenn din PC (Windows7)

Dagens temaer. Mer om adresseringsmodi. Indeksert adressering med offset og auto-inkrement eller dekrement. Register-indirekte adressering

Fetch Datamaskinen henter en instruksjon i form av et tall eller en rekke tall fra programminne.

Innhold. 2 Kompilatorer. 3 Datamaskiner og tallsystemer. 4 Oppsummering. 1 Skjerm (monitor) 2 Hovedkort (motherboard) 3 Prosessor (CPU)

INF2270. Input / Output (I/O)

Lars Vidar Magnusson

Hovedkort, brikkesett og busser

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

Kjenn din PC(windows7)

Fakultet for informasjonsteknologi, Løsning på kontinuasjon i TDT4186 Operativsystemer August 2005,

LAB OPPGAVE. Del 1 Setup Bios

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

Laboppgave. Del Optiplex GX620. av Jørgen Pedersen

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

Innhold. Innledning til Input/Output. Ulike typer Input/Output. Input/Output internt i datamaskinen. Input/Output mellom datamaskiner

Forelesning Instruksjonstyper Kap 5.5

LabOppgave. 1. Hva slags CPU har maskinen? Beskriv de tekniske egenskapene ved CPU en.

Transkript:

Dagens temaer! Praktiske! Flere! Cache-hukommelse eksempler på bruk av assembler/c/arkitektur teknikker for å øke hastigheten del 1 (fra kapittel 6.5 i Computer Organisation and Architecture )! Hvorfor cache! Grunnleggende virkemåte! Direkte-avbildet cache 1

Praktisk anvendelse: Satellittkommunikasjon! Satellitt brukt til kommunikasjon gjør at man har trådløs adgang til telefoni og Internet hvor som helst i verden (nesten).! Mye brukt av handelsflåte, forsvar, FN og etterhvert også som eneste bredbåndsalternativ i grisgrendte strøk! Satellitter befinner seg i varierende høyde, fra ca 650 km til 36000 km over jorden! Den største forskjellen mellom trådbasert og satellittbaserte systemer er den lange tidsforsinkelsen (ca 250 ms én vei for geostasjonære satellitter)! En satellitt koster ofte flere milliarder kroner, og satellittkommunikasjon er som regel mye dyrere enn bakkebasert utstyr! Et system for satellittkommunikasjon består av tre deler: 2

Forward Link Interface Forward Modem Return TLink Interface t Return Modem 3

Forward Link Interface! Radiolinken! Før opp til satellitten har endel parametre som må settes! Modulasjon (frekvens)! Koding (antall ekstra bit som må brukes for å overføre et nytte-bit )! Forsterking (sendeeffekt som skal brukes ved overføring av bit ene) en IP-pakke kan sendes inn på modemet i forover-retningen, må innholdet re-formatteres, og del tilleggsinformasjon må beregnes for at pakken skal kunne sendes korrekt:! Plass i tidluken(e)! Modulasjon, koding og forsterkning (MKF) Lengden av 1 superramme = 311 ms = 256 slots Slot 1 slot = 4096 symboler Mellom 2 og 5 symboler brukes for å overføre 1 byte Tidluke 4

! En! Man! Variasjon! Hvis sluttbrukerhar typisk kjøpt en viss båndbredde (eks 1024 forover, 256 i retur) kjøper også en bestemt Service Level Agreement (SLA) for å få en bestemt QoS, f.eks for! VoIP (må ha lav forsinkelse, liten/ingen variasjon i forsinkelse og konstant båndbredde)! Streaming (tåler forsinkelse, men uten variasjon, og høy båndbredde)! Filoverføring (tåler både forsinkelse, variasjon i forsinkelse, og variasjon i båndbredde) i atmosfæriske forhold gjør at man må bruke mer robust koding mange brukere er på systemet, konkurrerer man om satellittkapasiteten 5

! For! Ved! Hovedoppgave eiere og brukere av systemet er det viktig at satellitten brukes så optimalt som mulig! Eierne tjener mer penger, og kan senke prisene til! Sluttbrukere som forventer å få en bestent tjeneste til en gitt pris dårlig resursshåndtering vil satellitten utnyttes dårlig, samtidig som tjenesten blir dyr og kvaliteten mindre god. for Forward Link Interface! For hver innkommende IP-pakke beregne hvilke(n) slot og superramme pakken skal plasseres i, og med hvilke MKF verdier! Plassere så mange IP-pakker som mulig innenfor en superramme slik at alle SLA er overholdes! De to foregående jobbene må beregnes innen 311 millisekunder: Svært tidskritisk, og noen deler må skrives i assembler! Spesialdrivere må også skrives i assembler 6

Arkitektur på Forward Link Prosessor! Består av 2 (kalt FLP og TI) stykker 19 industri-pc er med Dual Pentium 2.4 GHz Xeon prosessorer.! Kommunikasjon mellom FLP og TI er gigabit Ethernet, og mellom TI og modem er det SPI (standard for video-overføring) Core Router FLP-Server TI-Server By TOLL By TCP By UT By LCID SPI Frame C&C CBR BST-CC VBR1 (1-30) VBR2 (1-30) C&C CBR VBR SPI BST FDS GRAC Frame Map C&C 7

Separate foiler som ikke deles ut! Foilene! Foilene som vises er fra Nera internt bruk og kan av kommersielle henyn ikke deles ut viser prosessen med å definere opp krav til ny hardwareplattform, og hvordan software-moduler fordeles på ulike hardware enheter 8

Cache! Pipelining! Andre er viktig for å øke antall instruksjoner som utføres pr sekund. teknikker som øker hastigheten ytterligere er! Flere CPUer i en maskin (multiprosessor)! Økt klokkehastighet! Bred ordlengde på instruksjoner og i datapath! Noen! Raskere disker! Hurtigere og større RAM teknikker er ren forbedring i teknologi, mens andre er forbedringer av selve arkitekturen. 9

Multiprosessorer (parallellprosessorer)! Ide: Istedenfor å la én CPU utføre instruksjoner, lar man flere CPUer samarbeide om den samme jobben.! Gir en teoretisk hastighetsøkning direkte proporsjonal med antall ekstra CPUer: det går n ganger raskere med n CPUer enn med én CPU.! I praksis ikke mulig av flere årsaker:! Ikke alltid mulig å dele opp et problem i like store deler som kan løses uavhengig av hverandre.! Det kreves administrasjon og koordinering av programeksekveringen før, under og etter at jobben er fordelt på de ulike CPUene, dvs ekstra overhead! Endel applikasjoner egner seg for lastdeling, f.eks server-applikasjoner, dvs enkelt å parallellisere oppgavene 10

Økt klokkehastighet og større ordlengde! Økt klokkehastighet reduserer tiden hver enkelt instruksjon tar (Resultatet av teknologisk utvikling.)! Hastigheten til alle deler av en datamaskin øker ikke like raskt:! Interne data/adressebusser! Nettverk! Klokkehastigheten til en CPU øker mye raskere enn lese/skrivehastigheten til hukommelsen, mao: Effektive hastighets-forbedring blir langt mindre.! Bredere datapath og ordlengde gjør det mulig å behandle større tall i en operasjon og å lese/skrive mer data fra hukommelsen i én operasjon.! Det er en øvre grense for hvor mange bit som kan behandles i en operasjon (typisk i dag er 64 eller 128 bit). 11

Raskere disker! Programmer trenger å aksessere disker av og til ved f.eks innlesning og skriving av data, ved oppstart og virtuell hukommelse! En harddisk ca 100 000 ganger langsommere enn en CPU, dvs at en CPU kan gjøre 100 000 instruksjoner mens en harddsik gjør én lese/skriveoperasjon.! Teknikker finnes for å lese store blokker av data ad gangen, prøve å gjette hvilke data som skal leses neste gang og lagre disse i hurtigminne, etc! Harddisker blir både raskere og får mer kapasitet, men allikevel vil hyppig diskaksess være et betydelig problem hvis hastighet er viktig. 12

Større og raskere hurtigminne! Det optimale ville være ubegrenset tilgang på billig hurtigminne like raskt som prosessoren selv. Henting av instruksjoner, og lesing/skriving av data ville gå like raskt som registeraksess.! I praksis må man velge hva som er viktigst av pris, hastighet og kapasitet - + Regi stre Cache - Kapasitet Pris per bit RAM Aksesstid + - Magnetisk disk + Magnetisk tape Optisk disk 13

Bruksområder for de ulike hukommelsestyper! Registre: Integrert på CPU en, relativt få (32-64 stykker) med like mange bit i hver som maskinens ordbredde! Cache: Mellomlager som ligger inne på (L1) eller i nærheten av (L2, L3) CPU en, typisk kapasitet fra 8 KiloByte (L1) til 512 (L2) KiloByte, og noen MegaByte (L3).! RAM: Internt på hovedkortet i nærheten av CPUen, størrelse opptil mange GigaByte.! Magnetisk disk: Ekstern eller intern lagringsenhet i maskinen, med kapasitet opptil TeraByte.! Magnetisk tape: Sekvensielt medium med opptil 10-talls sekunders aksesstid.! Optisk disk: (CD-ROM, CD-RW og DVD). Billig eksternt lagringsmedium med kapasitet opptil flere GigaByte (DVD). 14

Aksesstider! Registre: En klokkesykel, dvs like raskt som resten av prosessoren (nanosekunder).! Cache: Samme størrelsesorden som interne registre, men allikevel noe langsommere (avhengig av L1 eller L2/L3).! Hovedminne: Flere titalls nano-sekunder.! Magnetisk disk: 10 000 til 100 000 ganger langsommere aksesstid, dvs flere millisekunder. For å finne data må disken rotere til riktig posisjon! Magnetisk tape: Sekvensielt medium med opptil flere titalls sekunders aksesstid (man må i verste fall spole gjennom hele tapen før man finner det man leter etter.! Optisk disk: (CD-ROM, CD-RW og DVD): Opptil flere sekunders aksesstid. For å finne data må platen rotere til riktig posisjon. 15

Cache! Ønsker så mye og rask hukommelse som mulig tilgjengelig for et program under eksekvering, både for instruksjoner og data! Cache-minnet er logisk sett plassert mellom CPUen og RAM slik det er vist i figuren under:! Innholdet i cache vil alltid være et subsett av innholdet i RAM! Fysisk er cache enten integrert på CPU en eller plassert rett ved siden av (eller begge deler) CPU Cache RAM 16

Cache (forts.)! Kapasiteten til cache ligger i mellom det interne i CPUen og RAM. Typiske verdier er fra 8 KB til 2 MB (Finnes i flere nivåer kalt L1, L2 og L3)! Siden cache n er nesten like rask som CPUen, trenger ikke CPU en å stoppe opp og vente i mange klokkesykler på at RAM skal levere data.! CPU en har ingen bevissthet om at det finnes cache og ser ikke forskjell på om data eller instruksjoner ligger i cache eller i RAM! CPUen får beskjed utefra (buss- eller cache-kontroller) når data er klare. Om CPUen venter 1 eller 100 000 klokkesykler spiller ingen rolle annet enn for hastigheten. 17

Cache (forts.)! Siden cache n er mindre en hurtigminnet (RAM) består mesteparten av administrasjonen av cache i å velge ut hvilken del av programmet og hvilke data som skal ligge i cache, og hvilke som må ligge i RAM.! Cache benytter seg av lokalitetsprinsippet:! Instruksjoner/data aksesseres som regel sekvensielt, dvs fra samme område i hukommelsen! Som en konsekvens vil de samme instruksjonene/data også aksesseres nær hverandre i tid! Cache kopierer derfor hele blokker (størrelse fra 4 byte opp til noen kilobyte) 18

Cache (forts.) Slot-nummer Tag-felt Blokk 6410 1880 0064 0 1 2 3 0 1 2 3 0 1 2 3 6410 6411 6412 6413 1880 1881 1882 1883 0064 0065 0066 0067 Startadresse i blokken Tilsvarer adresse i RAM 19

CPU 1) Cachekontroller Når en prosessor skal hente en instruksjon eller lese/skrive data, vet den ikke om den skal hente fra RAM eller cache. Hvis det prosessoren ber om ligger i cache, kalles det for cache hit: Figur til høyre: CPUen om å få innholdet i lokasjon 1881 2) Tag-felt 6410 1880 0064 0 1 2 3 0 1 2 3 0 1 2 3 Blokk 3) 20