T8.4/T9.1 Prosessorer med høyere ytelse Flashcards

1
Q

Multiple issue

A

Når flere instruksjoner blir igangsatt i en klokkesykel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

⭐️ Static multiple issue

A

En implementasjon av en multiple-issue prosessor der flere valg blir tatt av kompilereren før utføring

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Dynamic multiple issue

A

En implementasjon av en multiple-issue prosessor der flere valg blir tatt imens utføringen av instruksjoner foregår

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Issue slots

A

Posisjoner der instruksjoner kommer fra i en gitt klokkesykel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Hvordan utnytter en prosessor parallellitet i tid?

A
  • Hvert steg jobber med ulike instruksjoner
  • Vi kan oppnå høyere ytelse gjennom å gjøre samlebåndet dypere
  • Krever lite ekstra maskinvare
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Hvordan utnytter prosessoren parallellitet i rom?

A
  • Et skritt jobber med flere instruksjoner samtidig
  • Krever mye ekstra maskinvare
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Superskalare samlebånd utnytter

A

parallellitet i tid og rom

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Superskalar prosessor

A

En avansert samlebånds teknikk som gjør det mulig for prosessoren å utføre mer enn en instruksjon per klokkesykel ved å velge de ila. kjøretiden

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Dynamic pipline scheduling

A

Maskinvare støtte for reorganisering av rekkefølgen av utførelsen av instruksjoner for å unngå stalls/stans

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

⭐️ Speculation

A

Prosessoren utfører instruksjoner som den ikke er sikker på at den skal utføre

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

⭐️ Sanne dataavhengigheter

A

En instruksjon leser det en annen skriver

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

⭐️ RAW (Read-After-Write) farer

A

Gitt av sanne datavhengigheter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

⭐️ Ut-avhengigheter

A

Avhengigheter der den opprinnelige rekkefølgen som instruksjoner blir utført i må ivaretas for at riktig verdi skal skrives

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

⭐️ Hva er fellesbetegnelsen for ut- og anti-avhengigheter?

A

Navneavhengigheter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

⭐️ WAW (“Write-After-Write”) farer

A

Gitt av ut-avhengigheter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

⭐️ Anti-avhengigheter

A

Avhengigheter der rekkefølgen mellom instruksjoner må ivaretas for å sikre at riktig verdi korresponderer til riktig instruksjon

17
Q

⭐️ WAR (“Write-After-Read”) farer

A

Gitt av anti-avhengigheter

18
Q

⭐️ Register renaming

A

Hver instruksjon får et nytt fysisk målregister

19
Q

⭐️ Hvorfor oppstår navneavhengigheter / utløses WAW and WAR farer?

A

Fordi vi har et begrenset antall registre

20
Q

⭐️ Hvordan fjerner register renaming WAW or WAR farer?

A

Tilordner ett fysisk målregister til hver instruksjon slik at navneavhengigheter fjernes.

21
Q

Instruksjonspakke

A

Alle instruksjoner i samme pakke kan utføres samtidig

22
Q

VLIW

A

En instruksjonssett arkitektur som setter igang flere operasjoner som er definert til å være selvstendige i en enkel-bred instruksjoner - en form for static multiple issue

23
Q

Hvordan kan en kompilator anvends på en static multiple issue prosessor?

A

Å generere programmer på en måte som forteller prosessoren om instruksjonene kan utføres samtidig

24
Q

⭐️ Hva er fordeler med med static multiple issue prosessorer?

A

Maskinvaren blir enklere

25
Q

⭐️ Hva er ulemper med static multiple issue prosessorer?

A
  • Kompilatoren må jobbe hardt for å utnytte instruksjonspakkene godt
  • Det er en del parallellitet som kun oppstår i kjøretid
  • Mindre fleksible ved kjøretid, da de ikke kan tilpasse seg dynamiske endringer i programflyten
26
Q

Hvorfor er det en begrensning å utføre instruksjoner i den rekkefølgen de står i, i et program?

A

Når en instruksjon må stoppe, stopper alle instruksjoner også, og jo lengre tid det tar å utføre en instruksjon, jo mer kunne man fått gjort i mellomtiden

27
Q

⭐️ Hvordan implementeres prosessorer som utfører instruksjoner ut-av-rekkefølge?

A
  • Bruke register renaming til å fjerne alle WAR og WAW farer
  • Forutsetter dynamic issue
  • Ut-av-rekkefølge utføring
28
Q

⭐️ Ut-av-rekkefølge utføring

A

En situasjon i samlebånds utføring der en instruksjon som er blokkert fra å utføres ikke fører til at de andre instruksjonene må vente

29
Q

In order commit

A

En commit der resultatene til en samlebånds utførelse blir skrevet til programmereren i den samme rekkefølgen som de ble hentet

30
Q

⭐️ Data flow limit

A

Det antallet instruksjoner vi kan utføre samtidig når vi kun tar hensyn til sanne dataavhengigheter

31
Q

⭐️ Når når ut-av-rekkefølge prosessorer “data flow limit”?

A

Når de ikke har nok maskinvareressurser tilgjengelig