Pipeline példák (Normál, 2019).

Slides:



Advertisements
Hasonló előadás
Pipeline példák. Pipe 1. feladat Adott a következő utasítás sorozat i1: R0 MEM [R1+8] i2: R2 R0 * 3 i3: R3 MEM [R1+12] i4: R4 R3 * 5 i5: R0 R2 + R4 A.
Advertisements

Egyéb adók változásai Törvénytervezetek alapján. ART változásai 1) Munkáltatói adó-megállapítás, egyszerűsített bevallás lehetősége  Az új szabályok.
Vállalati gazdasági kérdések Pékakadémia2010.április.20.
ECM/DMS A GYAKORLATBAN E-SZÁMLA KIBOCSÁTÁS ÉS BEFOGADÁS E-SZÁMLA KIBOCSÁTÁS ÉS BEFOGADÁS
2011. évi zárás Készítette: Juhász Ágnes. 1. Zárást megelőző feladatok  Leltározás  Folyószámla egyeztetés (kapcsolt vállalkozásoktól egyenlegkérés)
 Alap tudnivalók Alap tudnivalók  Az If és a While folyamatábrák Az If és a While folyamatábrák  Probléma Probléma  A while ciklus (általános alak,
1 Az önértékelés mint projekt 6. előadás 1 2 Az előadás tartalmi elemei  A projekt fogalma  A projektek elemei  A projekt szervezete  Projektfázisok.
CÉLCÉLCSOPORT  Egészségügyi szakmai tájékoztatás és betegtájékoztatás, az egészséges életvitelhez szükséges információk szolgáltatása, publikálása, áttekint-
Forrás: Reiter István C_Sharp programozás lépésről lépésre (frissített tartalommal )
Környezeti fenntarthatóság. A KÖRNYEZETI FENNTARTHATÓSÁG JELENTÉSE A HELYI GYAKORLATBAN Nevelőtestületi ülés,
1. 2 káros tartalmak típusai és előfordulásuk a gyerekek védelmét biztosító szabályok, a felelősség kérdése a korhatár-kategóriák megítélése, a besorolás.
EU pályázati programok A szervezet / változások 1.A pályázók adminisztrációs terheinek csökkentése a projektfejlesztési, pályázati szakaszban.
BEST-INVEST Független Biztosításközvetítő Kft.. Összes biztosítási díjbevétel 2004 (600 Mrd Ft)
Gazdasági jog IV. Előadás Egyes társasági formák Közkeresleti társaság, betéti társaság.
Alaplap.
Steierlein István ÁHO-hálózatfejlesztési szakreferens
Nemzeti Erőforrás Minisztérium Oktatásért Felelős Államtitkárság
DIGITÁLIS VÁSÁRLÁSOK, GENERÁCIÓS KÜLÖNBSÉGEK
ÖFFK II. projekt keretében megvalósítandó koordinációs kutatás workshop sorozata Hajdú-Bihar megye turisztikai fejlesztéseinek koordinációja Nyíradony.
Mikrovezérlők alkalmazástechnikája laboratóriumi gyakorlat
Becslés gyakorlat november 3.
A FELÜGYELŐBIZOTTSÁG BESZÁMOLÓJA A VSZT
A víziközmű-szolgáltatásról szóló évi CCIX
Jogi alapismeretek 2013.
Tóth Gábor Heves Megyei Kormányhivatal Jogi és Koordinációs Főosztály
Háttértárak karbantartása
HÉL (Hasonló értelmű licit)
MAGYAR ADÓÜGYEK AZ EURÓPAI UNIÓ BÍRÓSÁGA ELŐTT
Becsléselmélet - Konzultáció
CSOPORT - A minőségellenőrök egy megfelelő csoportja
Colorianne Reinforce-B
Konfliktusok az iskolában
M4 metróvonal beüzemelési folyamatai
A földrajzi kísérletek szervezése és végrehajtása
Tartalékolás 1.
Bevezetés Az ivóvizek minősége törvényileg szabályozott
MOZGÓ SZÍNPAD Molino Kft
dr. Jeney László egyetemi adjunktus Európa regionális földrajza
VB ADATTÍPUSOK.
Közigazgatási alapvizsga a Probono rendszerben
[Plakát címe] Lorem ipsum dolor sit amet, consectetuer adipiscing elit maecenas porttitor congue massa fusce [Az alábbi neveket és titulusokat cserélje.
Alapvető tudnivalók Írásjelek mindig előtte lévő szóhoz tapadjanak
Ptolemaiosztól Newton-ig
IDŐZÍTÉS PROGRAMOZÁSA
RUGÓK.
Mikrorendszer megvalósítása FPGA környezetben
A légkör anyaga és szerkezete
Önköltségszámítás.
Informatikai gyakorlatok 11. évfolyam
B M Java Programozás 4. Gy: Java GUI IT A N Tipper, MVC kalkulátor
Környezeti Kontrolling
Felnőttképzés a közművelődésben
A számítógép története
SZAKKÉPZÉSI ÖNÉRTÉKELÉSI MODELL I. HELYZETFELMÉRŐ SZINT FOLYAMATA 8
Járműtelepi rendszermodell 2.
További rendező és kereső algoritmusok
A szállítási probléma.
I. HELYZETFELMÉRÉSI SZINT FOLYAMATA 3. FEJLESZTÉSI FÁZIS 10. előadás
Dr. Vasas Lívia, PhD december
A 2010-es év egy szőlősgazda szemével.
Tájékoztató az EPER pályázati folyamatáról
Szöveges adatok tárolása
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Edényrendezés - RADIX „vissza” - bináris számokra
Magánszemélyként bérbe adnám az ingatlanomat.
Algoritmusok.
Fejlett pipeline megoldások IMSC 2019
Pipeline példák (IMSC, 2019).
Tevékenységek felvétele
Egyenletesen változó mozgás
Előadás másolata:

Pipeline példák (Normál, 2019)

Pipe 1. feladat Adott a következő utasítás sorozat i1: R0 MEM [R1+8] i2: R2 R0 * 3 i3: R3 MEM [R1+12] i4: R4 R3 * 5 i5: R0 R2 + R4 A pipeline 5 fokozatú IF: utasítás lehívás, ID: utasítás dekódolás, EX: végrehajtás MEM: memória hozzáférés, WB: regiszter visszaírás IF ID EX MEM WB

Pipe 1. feladat a. kérdés Adat-egymásrahatások. Megadás formája: függő: függés típusa( amitől függ) Típusok: RAW: read after write WAR: write after read WAW: write after write i1: R0MEM [R1+8] i2: R2R0 * 3 i3: R3MEM [R1+12] i4: R4R3 * 5 i5: R0R2 + R4 i1: - i2: RAW(i1) i3: - i4: RAW(i3) i5: RAW(i4), RAW(i2),WAW(i1),WAR(i2)

Pipe 1. feladat b. kérdés Ütemezés 1 2 3 4 5 6 7 8 9 10 11 i1 IF ID EX MEM WB i2 IF ID A* EX MEM WB i3 IF F* ID EX MEM WB i4 IF A* ID EX MEM WB i5 IF F* ID EX MEM WB i2-A*: i2-nek kell i1 eredménye, az csak MEM végén van meg, adatfüggés i3-F*:ID-t i2 foglalja, feldolgozási függés i4-A*:i4-nek kell i3 eredménye, MEM végén van meg, adatfüggés i5-F*:ID-t foglalja i4, feldolgozási függés

Pipe 1. feladat c. kérdés Forwarding 1 2 3 4 5 6 7 8 9 10 11 i1 IF ID EX MEM WB i2 IF ID A* EX MEM WB i3 IF F* ID EX MEM WB i4 IF A* ID EX MEM WB i5 IF F* ID EX MEM WB i2 az i1 eredményét (R0 értéke) a MEM/WB regiszterből veszi i4 az i3 eredményét (R3 értéke) a MEM/WB regiszterből veszi i5 az i4 eredményét (R4 értéke) az EX/MEM regiszterből veszi (nincs memória hivatkozás)

Pipe 1. feladat d. kérdés Végrehajtás pipeline-nal és anélkül Pipeline: 11 egységnyi idő (feltöltéssel/kiürüléssel együtt) Nélküle: Összesen 22 egységnyi idő i1 5 i2 4 i3 i4 i5

Pipe 1. feladat e. kérdés Gyorsítás átrendezéssel Eredeti sorrend: i1: R0MEM [R1+8] i2: R2R0 * 3 i3: R3MEM [R1+12] i4: R4R3 * 5 i5: R0R2 + R4 Átrendezve i1: R0MEM [R1+8] i2: R3MEM [R1+12] i3: R2R0 * 3 i4: R4R3 * 5 i5: R0R2 + R4 Ezzel felszámoltuk az –eredeti jelöléssel- i2: RAW(i1) és az i4: RAW(i3) függőségek miatti várakozásokat Mivel a feldolgozási függéseket az adat függések okozták, azok is megszűnnek, így várakozás nélkül 9 egységnyi idő alatt végrehajtható a program

Pipe 2. feladat Adott a következő utasítás sorozat i1: R5  MEM [R3+24] i2: R6  MEM [R4+16] i3: R7  R6 + R5 i4: R8  R6 – R5 i5: R5  R7 * R8 I6: R4  R4 + 4 A pipeline 6 fokozatú IF: utasítás lehívás(iterációs idő1, késleltetés2, 2 fokozat), ID: utasítás dekódolás, EX: végrehajtás MEM: memória hozzáférés, WB: regiszter visszaírás IF0 IF1 ID EX MEM WB

Pipe 2. feladat a. kérdés Adat-egymásrahatások. Megadás formája: függő: függés típusa(amitől függ) Típusok: RAW: read after write WAR: write after read WAW: write after write i1: - i1: R5  MEM [R3+24] i2: R6  MEM [R4+16] i3: R7  R6 + R5 i4: R8  R6 – R5 i5: R5  R7 * R8 i6: R4  R4 + 4 i2:- i3: RAW(i1), RAW(i2) i4: RAW(i1).RAW(i2) i5: RAW(i3), RAW(i4),WAW(i1), WAR(i3), WAR(i4) i6: WAR(i2)

Pipe 2. feladat b. kérdés Ütemezés 1 2 3 4 5 6 7 8 9 10 11 12

Pipe 2. feladat c. kérdés Forwarding 1 2 3 4 5 6 7 8 9 10 11 12

Pipe 2. feladat d. kérdés Végrehajtás pipeline-nal és anélkül Pipeline: 12 egységnyi idő (feltöltéssel/kiürüléssel együtt) Nélküle: Összesen 32 egységnyi idő i1 6 i2 i3 5 i4 i5 i6

Pipe 2. feladat e. kérdés Gyorsítás átrendezéssel Eredeti sorrend: i1: R5  MEM [R3+24] i2: R6  MEM [R4+16] i3: R7  R6 + R5 i4: R8  R6 – R5 i5: R5  R7 * R8 i6: R4  R4 + 4 Átrendezve i1: R5  MEM [R3+24] i2: R6  MEM [R4+16] i3: R4  R4 + 4 i4: R7  R6 + R5 i5: R8  R6 – R5 i6: R5  R7 * R8 Ezzel felszámoltuk az –eredeti jelöléssel- i3: RAW(i1), RAW(i2) és az i4: RAW(i1),RAW(i2) függés miatti várakozást Mivel a feldolgozási várakozást az adat függés miatti okozta, az is megszűnik, így várakozás nélkül 11 egységnyi idő alatt végrehajtható a program

Pipe 2. feladat e. kérdés Az ütemezés, forwardinggal 1 2 3 4 5 6 7 8 9 10 11 i1 IF0 ID EX MEM WB IF1 i2 IF0 IF1 ID EX MEM WB i3 IF0 IF1 ID EX MEM WB i4 IF0 IF1 ID EX MEM WB i5 IF0 IF1 ID EX MEM WB i6 IF0 IF1 ID EX MEM WB

Pipe 3. feladat Adott a következő utasítás sorozat i1: D0  D1 * D2 i2: D3  D0 + D5 i3: MEM [R0 + 4]  D3 i4: MEM [R0 +12]  D0 D0~D5 regiszterek lebegőpontos számot, R0 egész számot tárol A lebegőpontos összeadás 4 időegységet, a szorzás 7 egységet, a többi művelet 1 időegységet késleltet. Az iterációs idő mindig 1 egység

Pipe 3. feladat A pipeline szerkezete EX IF ID MEM WB A0 A1 A2 A3 M0 M0~M6: lebegőpontos szorzás S0~S3: lebegőpontos összeadás

Pipe 3. feladat a. kérdés Adat egymásra hatások. Megadás formája: függő: függés típusa(amitől függ) Típusok: RAW: read after write WAR: write after read WAW: write after write i1: - i1: D0  D1 * D2 i2: D3  D0 + D5 i3: MEM [R0 + 4]  D3 i4: MEM [R0 +12]  D0 i2: RAW(i1) i3: RAW(i2) i4: RAW(i1)

Pipe 3. feladat b. kérdés Ütemezés 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 i1 IF ID M0 MEM WB M1 M2 M3 M4 M5 M6 A* i2 IF ID A0 A1 A2 A3 MEM WB F* i3 IF ID A* EX MEM WB i4 IF ID F* EX MEM WB Az EX helyett az ID-ben is lehet várakoztatni!

Pipe 3. feladat c. kérdés Gyorsítás átrendezéssel Átrendezve i1: D0  D1 * D2 i2: D3  D0 + D5 i3: MEM [R0 +12]  D0 i4: MEM [R0 + 4]  D3 Eredeti sorrend: i1: D0  D1 * D2 i2: D3  D0 + D5 i3: MEM [R0 + 4]  D3 i4: MEM [R0 +12]  D0 Távolabbra került a D3 miatti adatfüggésben érintett i2 és i3

Pipe 3. feladat d. kérdés Ütemezés átrendezés után 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 i1 IF ID M0 MEM WB M1 M2 M3 M4 M5 M6 A* i2 IF ID A0 A1 A2 A3 MEM WB F* i3 IF ID EX MEM WB A* F* i4 IF ID EX MEM WB i2: szüksége van i1 eredményére (D0 értéke), adat függés miatt várakozik i3: i2 foglalja az ID egységet, feldolgozási függés miatt várakozik i4: szüksége van i2 eredményére ( D3 értéke), adat függés miatt, azután i2 foglalja a MEM egységet, feldolgozási függés miatt

Pipe 4. feladat Adott a következő utasítás sorozat i1: D2  D0 * D1 i2: MEM [R0 + 0]  D2 i3: D2  D0 + D1 i4: MEM [R0 +8]  D2 D0~D2 regiszterek lebegőpontos számot, R0 egész számot tárol A lebegőpontos összeadás 4 időegységet, a szorzás 7 egységet, a többi művelet 1 időegységet késleltet. Az iterációs idő mindig 1 egység

Pipe 4. feladat a. kérdés Adat egymásra hatások. Megadás formája: függő: függés típusa(amitől függ) Típusok: RAW: read after write WAR: write after read WAW: write after write i1: - i1: D2  D0 * D1 i2: MEM [R0 + 0]  D2 i3: D2  D0 + D1 i4: MEM [R0 +8]  D2 i2: RAW(i1) i3: WAW(i1),WAR(i2) i4: RAW(i3)

Pipe 4. feladat b. kérdés Ütemezés: i3 WB állapota nem előzheti meg i1 WB állapotát, mert ez hibás értéket adna D2-ben. Ezért 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 i1 IF ID M0 MEM WB M1 M2 M3 M4 M5 M6 EX i2 IF ID A* F* MEM WB A0 i3 IF ID A1 A2 MEM WB A3 A*/F* F* EX i4 IF ID MEM WB A STORE műveleteket EX helyett az ID-ben is lehet várakoztatni!