En vanlig femstegspipeline FDEMW FDEMW FDEMW FDEMW tid.

Slides:



Advertisements
Liknande presentationer
Sätt kryss vid ett av följande alternativ:
Advertisements

IT för personligt arbete F5
Talföljder formler och summor
Städer hur ser du på dem? 50% av alla människor på jorden bor i städer
Barnanpassad utredning
EEF:s 6 steg till Energieffektivisering
X-mas algebra Är du redo? Klicka!!.
En genomgång av spelet: Dubbelkrig-Grön
SSQ12-B Instruktioner Namn Datum Ålder
Access med Sebastian och Robert
FL4 732G70 Statistik A Detta är en generell mall för att göra PowerPoint presentationer enligt LiUs grafiska profil. Du skriver in din rubrik,
Man kan installera Redhat från många olika typer av media: -CD-Skivor -Web -NFS (med start på diskett eller boot från nätverkskort) -SMBFS (med start på.
Vad gör egentligen Kronofogden?
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Kapitel 5: CPU-schemaläggning.
Hur många behöver våra stationer vara – och var skall de placeras?
Dagens ämnen Linjära avbildningar
Vill du lära dig kort division?
PowerPoint av Bendik S. Søvegjarto Koncept, text och regler av Skage Hansen.
Tentamensdags och lab 3…. Större program delas normalt upp i flera filer/moduler vilket har flera fördelar:  Programmets logiska struktur när man klumpar.
23 August 2014 IS1200 Datorteknik vt09, föreläsning 10, (E och I mfl)1 IS1200 Datorteknik Föreläsning Processorkonstruktion 2. DMA, Direct Memory.
Denna föreläsning zVad kursen handlar om zKursupplägg, litteratur, bra att veta zPrestanda - ämnet för dagen.
En vanlig femstegspipeline FDEMW FDEMW FDEMW FDEMW tid.
9 September 2014IS1200 Datorteknik, förel 101 IS1200 Datorteknik Föreläsning Processorkonstruktion 2. DMA, Direct Memory Access 3. Byte-code i JAVA.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Kapitel 13: I/O-system.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Kapitel 7: Deadlocks.
Information om hur man spelar Trafik!. Din väckarklocka ringer på morgonen och du går upp och gör dig i ordning. Efter en smaskig frukost är du på väg.
Programmering B PHP Lektion 2
Tentamensdags och lab 3…. Större program delas normalt upp i flera filer/moduler vilket har flera fördelar:  Programmets logiska struktur när man klumpar.
Köksbordsmaterial växtnäringsbalanser Bilder till kokboken om växtnäringsbalanser.
Procentbegreppet Vad är procent? Centikuber Procentplattor.
Rollfördelning i funktionärsbåset Vem gör vad i Danicahallen.
The Square of Leadership School of Leadership,
(a) Omkretsen C= 100 m, v A =10 m/s, v B = 15 m/s Radien R = 100/(2  ) = 50/  Vinkel frekvensen för A och B:  A = v A /R = 10  /50 =  /5  B = v B.
Grundläggande programmering
Problemlösning Veckodagsproblemet Gissa talet Siffersumman.
= Passning eller skott = Löpning utan boll = Driver boll
Transaktionshantering (kap 17+18)
= Passning eller skott = Löpning utan boll = Driver boll
2G1510 Datorteknik fk Föreläsning 1, hösten 2003.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
FL7 732G70 Statistik A Detta är en generell mall för att göra PowerPoint presentationer enligt LiUs grafiska profil. Du skriver in din rubrik,
31 March 2015IS1200 Datorteknik, förel 101 IS1200 Datorteknik Föreläsning Processorkonstruktion 2. DMA, Direct Memory Access 3. Byte-code i JAVA.
31 March 2015 IS1200 Datorteknik ht2009 föreläsning 2, (D2)1 IS1200 Datorteknik Föreläsning 2 Vi bygger en processor Kursboken, valda delar av kapitel.
IS1200 Datorteknik Föreläsning CE F2 Vi bygger en processor Kursboken, delar av kapitel 7 31 March IS1200 Datorteknik föreläsning CE – F2.
1 386 Från s bits adressbuss –=>4GB minne kan adresseras 32 bits databuss max klockfrekvens: 40MHz Protected mode –virtuellt minne –segmentering.
Vägda medeltal och standardvägning Index
Pipelining Föreläsning 4. T exe — CPU-exekveringstid I — Antalet exekverade instruktioner CPI — Genomsnittligt antal klockcykler per instruktion T c —
Cacheminnen: skrivning ● Träff ● Skrivbuffert ● Miss.
Varför inte köra alla instruktioner samtidigt? zMåste vänta på: yresultat från andra instruktioner yatt resurser i processorn ska bli lediga yatt få veta.
Återblick. Vad är en databas? ”En samling information som är organiserad på ett sådant sätt att det är lätt att söka efter och hämta enskilda bitar information”
Instruktionsschemaläggning ● Beroendegraf + schemaläggning inom block ● Global och interprocedurell registerallokering ● Kodblock (basic blocks) är ofta.
William Sandqvist ReadModifyWrite-problemet PORTB = 0; PORTB.0 = 1; PORTB = PORTB; Vilket värde har portpinnen RB1 nu ? Förmodligen ”1”,
Varför inte köra alla instruktioner samtidigt? zMåste vänta på: yresultat från andra instruktioner yatt resurser i processorn ska bli lediga yatt få veta.
OOP F2:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 2 Deklaration och tilldelning Programsatser Tilldelning Input/Output Selektion.
Uppgift 5 Tekniska rapporten En beskrivning av ett uppdrag ni har gjort i er grupp. Du ska bifoga en programmeringshandledning som visar hur man programmerar.
1 Föreläsning2 Operativsystem. 2 Talsystem Decimal (bas 10): 0,1,2,…,8,9 Binär talsystem (bas 2): endast 1 och 0 Hexadecimal talsystem (bas 16): 0,1,…9,A,…,E,F.
MAKTLEKAR.
732G22 Grunder i statistisk metodik
Föreläsning2 Operativsystem.
Uppstart iPad Höörs kommun.
William Sandqvist Övning 10 Processorkonstruktion med pipe-line.
14 July 2015 IS1200/2G1518 Datorteknik, föreläsning 2, ht2007 (D2)1 IS1200 Datorteknik Föreläsning 2 Vi bygger en processor Kursboken, valda delar av kapitel.
Föreläsning 3 Väsentliga delar i ett Javaprogram Input i paketet extra
SMART – Stability Metrics for Ad hoc Routing. Presentera för vilka vi gjort jobbet för, handledare osv.
William Sandqvist Övning 10 Processorkonstruktion med pipe-line.
William Sandqvist KIA’s fabrik i Slovenien En bil i minuten lämnar bandet – tar det en minut att bygga en bil? Nej för KIA's fabrik utanför.
Statistisk hypotesprövning. Test av hypoteser Ofta när man gör undersökningar så vill man ha svar på olika frågor (s.k. hypoteser). T.ex. Stämmer en spelares.
Roligt lärande! Varför? Vad ? Hur?.
Grundläggande datavetenskap, 4p
Presentationens avskrift:

En vanlig femstegspipeline FDEMW FDEMW FDEMW FDEMW tid

En superskalär femstegspipeline av grad 2 tid FDEMW FDEMW FDEMW FDEMW FDEMW FDEMW FDEMW FDEMW

Beroenden ger stopp i röret tid FDEMW FDEMW FDEMW FDEMW FDEMW FDEMW FDEMW FDEMW stall Instruktion 1 beräknar ett värde......som instruktion 2 använder

Extra hårdvara zÖkad bandbredd från instruktionscache zDubbla instruktionsavkodare zFler läsportar på registerfilen zBypassing ökar kvadratiskt (4n 2 ) zFlera funktionsenheter - dubbel ALU zFlera portar till datacacheminnet

Heltal parallellt med flyttal zInstruktionsuppsättningen har ofta separata register för heltal och flyttal zFunktionsenheterna är alltid separata zSällsynt med beroenden mellan heltals- och flyttalsinstruktioner zSeparata bypassvägar

Mer att göra för avkodaren zSka upptäcka beroenden zSka skicka instruktioner till rätt enhet zMer att göra tar längre tid - superskalära datorer har ofta 2-3 avkodningssteg zPPro/II/iii har 3-7 steg, beror på hur man räknar

Ny pipeline zTvå avkodningssteg, Decode och Register read zHoppinstruktioner: yEfter D-steget vet vi vart vi ska hoppa yEfter R-steget vet vi om vi ska hoppa FDREMW

Hopp blir dyrt tid FDREM FD--- F---- FDREM FDR-- FD--- F---- FDREM W - - W W

Branch penalties zMisfetch penalty (1 cykel, D-steget) yförlorad tid när man hämtat ett hopp och gissar rätt att man ska hoppa zMispredict penalty (2 cykler, D + R) yförlorad tid vid felgissning yförst i R-steget vet man att gissningen var fel FDREMW Samtidigt hämtas alltid nästa instruktion i ordningsföljd

Superpipelining zstartar en instruktion per klockcykel zhar extra kort cykeltid yE1 och E2 behövs för ALU, en beroende instruktion kan inte starta i cykeln efter F1F2D1D2E1E2M1M2W1W2 FDEMW vanlig femstegspipeline superpipelinad av grad 2

Exempel zPentium Pro/II/iii, Pentium 4 är superpipelinade zExec tar 1 steg, decode tar många - ojämnt! Pentium: 5 steg PPro/II/iii: 10 steg P4: 20 steg

Latens (latency) zLatens - cykler tills resultat kan användas zALU-instruktioner har ofta latens 1 yberoende instruktion kan köras i nästa cykel - men inte i samma! zLOAD i femstegpipeline har latens 2 zHopp har ofta lång latens ysärskilt när hoppgissningen misslyckas

Genomsnittlig grad av superpipelining zAnta: yOm Load och hopp har latens 3, ALU 1 yLoad och hopp är vardera 25% av de utförda instruktionerna zGenomsnittlig grad av superpipelining: y0,25 x 3 + 0,25 x 3 + 0,50 x 1 = 2,0

Tolkning zVärdet 2 betyder att: ydet program som körs bör vara sådant att det för det mesta finns 2 saker att göra samtidigt yi genomsnitt ska varje instruktion följas av en oberoende instruktion zDet finns gränser för hur mycket som finns att göra samtidigt i typiska program yvärden på 2-4 är rimliga, knappast mer