4.Tétel Az adat-, a vezérlés és az erőforrás-függőségek Flashcards

1
Q

Függőségek csoportosítása

A

-Adatfüggőségek: Egymást követő utasítások
ugyanazt az adatot használják.
-Vezérlés függőség: Feltétlen, vagy feltételes ugró
utasítások esetén.
-Erőforrás függőség: Utasítások ugyanazt az
erőforrást (VE)et akarják
használni.

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

Adatfüggőségek csoportosítása

A

Kép1

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

Műveleti adatfüggőség

A

kép2+kép3

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

Ál-adatfüggőség, WAR- write after read

A

A.) Probléma
( Szorzásnál:)
I1 mul r3r2r1
I2 add r2r4r5
Mit tehetünk, hogy ne írja felül a
következő operandus az előzőt?
MUL sokkal lassabb, ADD megelőzi!!
- szekvenciális feldolgozás -> nincsen gond
- párhuzamos feldolgozásnál viszont előfordulhat az I2 utasítás hamarabb fut le, mint az I1 -> az
add utasítás felülírhatja a mul utasítás bemenő operandusát.A két utasítás között függőség áll
fenn.
B.) Megoldás: Megszüntethető regiszter átnevezéssel r2 -> r27
átmeneti regiszter önálló, saját címtartománnyal.
I1 mul r3r2r1
I2 add r27r4r5
Extra hardver: átnevezési regiszterkészletet építettek be.
Az I2 utasításban szereplő cél operandust egy egészen más regiszterbe helyezzük (átmeneti
regisztertérbe) -> a két utasítás függetlenné vált.

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

WAW – Write After Write

A

A.) Probléma
I1 mul r3r2r1
I2 add r3r4r5
- Mindkét utasítás ugyan abba a regiszterbe ír.
- Párhuzamos feldolgozásnál az I2 utasítás hamarabb írhat az r3- as
regiszterbe, ami hibát eredményezhet.
B.) Megoldás: átnevezési regiszterkészlet bevezetése. (történhet statikusan és dinamikusan is)
I1 mul r3r2r1
I2 add r31r4r5

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

Ciklusbeli adatfüggőségek

A

A.) Probléma:
do I=2,n
X(I):=A(I)*X(I-1)+B(I)
end do
Valós függőség, az X I. eleme értékének meghatározásához
szükségünk van az X I-1. elemének értékére, ami párhuzamos
feldolgozás esetén még nincs kész.
A lassítás mértéke függ attól, hogy az X-nek melyik indexű értékére van szükség. A példában a
leginkább lassító eset szerepel, kevésbé lassít pl. az I-2 vagy I-3 stb.(2től N-ig megy a ciklus)
B.)
Kezelése: Algoritmus átalakítással.

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

Vezérlés függőségek

Feltétlen elágazás, késleltetett ugrás, statikus elágazás kezelés

A

kép4+
Statikus kezelés:
- NOP (no operation) utasítás a futószalag számától függően (JMP után tesszük be).
- Ez az ugrási rés, vagy buborék. o Kétfokozatú futószalagnál: 2-1=1 rés o Négyfokozatú
futószalagnál: 4-1=3 rés o N-fokozatú futószalagnál: n-1 rés
Lényege: Fölösleges utasításokat végzünk, de nem veszélyeztetjük a regiszter tartalmakat.
Kétfokozatú futószalag esetén. Minden JMP utasítás után beszúr egy NOP –ot
MUL
JMP címke
NOP
ADD
Címke SHL
+kép5
+kép6

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