Optimalizálás nemklasszikus architektúrákon

Slides:



Advertisements
Hasonló előadás
Alaplap.
Advertisements

Számítógépek tuningolása
CUDA.
Neumann-elvek A számítógép legyen teljesen elektronikus, külön vezérlő és végrehajtó egységgel. Kettes számrendszert használjon. Az adatok és a programok.
Az integrált áramkörök (IC-k) tervezése
Tömbök C#-ban.
Állapotgépek (state machines)
Matematika II. 1. előadás Geodézia szakmérnöki szak 2012/2013. tanév/
Az integrált áramkörök (IC-k) típusai
Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával)
Csoportosítás megadása: Δx – csoport szélesség
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
Ez a dokumentum az Európai Unió pénzügyi támogatásával valósult meg. A dokumentum tartalmáért teljes mértékben Szegedi Tudományegyetem vállalja a felelősséget,
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
DS1620 és FPGA segítségével
A memória.
A D INAMIKUS RAM ÚJDONSÁGAI. D INAMIKUS RAM  DDR  DDR2  DDR3  DDR4  DDR 5.
Paradigmaváltások a processzorfejlesztésben Sima Dezső augusztus 25.
CISC - RISC processzor jellemzők
A memória.
Számítógép memória jellemzői
Többmagos processzorok
Felkészítő tanár: Széki Tibor tanár úr
Számítástechnika a KFKI AEKI-ben
A programozás alapjai A számítógép számára a feladat meghatá- rozását programozásnak nevezzük. Ha a processzor utasításait használjuk a feladat meghatározásához,
Hardvereszközök Hardvereszközök I.rész. Hardvereszközök CPU Memóri a Input Háttértárolók Outpu t A számítógép felépítési elve Neumann elvek: 1.Soros utasításvégrehajtás.
Véletlenszám generátorok
A mikroprocesszor frekvenciája (mérete)
FPGA & Verilog ismertető
Magas szintű hardware szintézis
Mikrokontroller (MCU, mikroC)
Számítógép legfontosabb paraméterei
Az AUDI informatikai motorja
A számítógép felépítése
A Neumann-elvű gépek A Neumann elvek:
Egyenesvonalú (lineáris) adatszerkezetek
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Podoski Péter és Zabb László. Bevezető Algoritmus-vizualizáció témakörében végeztünk kutatásokat és fejlesztéseket Felmértük a manapság ismert eszközök.
CUDA C/C++ programozás
A központi egység Informatika alapjai Készítette: Senkeiné B. Judit.
Ismerkedjünk tovább a számítógéppel
Feladatok (értékadás)
Menetrend optimalizálása genetikus algoritmussal
Piramis klaszter rendszer
Nagy Szilvia 2. Lineáris blokk-kódok II.
ifin811/ea1 C Programozás: Hardver alapok áttekintése
Memóriakezelés feladatok Feladat: 12 bites címtartomány. 0 ~ 2047 legyen mindig.
A processzorok (CPU).
PIC mikrokontroller.
2015. július július július 22. Készítette: Gráf Tímea Informatika 9. évf. Informatikai alapismeretek III.
FPGA Készítette: Pogrányi Imre.
Készítette:Mohamed Ahmed Azmi 9.A. Random Access Memory Alap tudnivalók a RAM -ról: Írható és olvasható memória. Feladata ideiglenes adatok tárolása,
Algoritmusok hatékonysága – lottószelvények
1 A számítógépek felépítése jellemzői, működése. 2 A számítógép feladata Az adatok Bevitele Tárolása Feldolgozása Kivitele (eredmény megjelenítése)
Hatékony-e a rekurzió? FÉLEGYHÁZI TAMÁS GÁBOR 1 Kovács Magda-díj pályázat 2015/16.
2004 május 27. GÉPÉSZET Komplex rendszerek szimulációja LabVIEW-ban Lipovszki György Budapesti Műszaki Egyetem Mechatronika, Optika és Gépészeti.
Sz&p prof.
CPU (Processzor) A CPU (Central Processing Unit – Központi Feldolgozó Egység) a számítógép azon egysége, amely értelmezi az utasításokat és vezérli.
RAM (Random Access Memory)
FPGA oktatás az Óbudai Egyetemen
Informatika (Bevezetés az informatikába)
Információtechnológiai alapismeretek
FPGA oktatás a PTE MIK -n
Nevezetes algoritmusok
A számítógép felépítése
Elektromos alapjelenségek, áramerősség, feszültség (Összefoglalás)
Programozható áramkörök
Informatikai gyakorlatok 11. évfolyam
Előadás másolata:

Optimalizálás nemklasszikus architektúrákon Major Sándor Roland Herendi Tamás

Összefoglalás Nemklasszikus architektúrák FPGA eszközök Véletlenszám generálás Kutatási eredmények: -Mátrix hatványozás -Polinom redukálás Jövőbeli kutatás

Nemklasszikus architektúrák Klasszikus architektúra: Neumann-elv Nemklasszikus architektúra: pl. Soros végrehajtás helyett párhuzamos végrehajtás Elméleti modell: -Boole-hálózatok -Automata hálózatok

FPGA Field-programmable gate array Célhardver hozható létre, számítást végző és segítő elemek összekötésével Újraprogramozható! Look-up table-ök, regiszterek, Blokk RAM-ok, speciális szorzók 6-LUT: hat bit menetű look-up table: 64 bit „memória”, bitenként címezve Boole-függvények elvégzésére konfigurálható Kétdimenziós tömbként találhatók a chip-en

Modulok létrehozása Xilinx ISE Design Suite Valamilyen HDL nyelven írt forrás (Verilog, VHDL) A felprogramozható modul több fordulóban jön létre: Synthesize, Translate, Map, Place & Route, Generate programming file Időigényes is lehet, hasznos a szimuláció!

FPGA Kutatáshoz használt FPGA eszközök: Virtex-5 LX110T Virtex-5 LX50: NI pályázat 2012 Morpheus: 5 db. Spartan-6 (LX45T és LX150T) -rendelésre készült, nagy számítási igényű matematikai algoritmusok párhuzamos futtatására alkalmas eszköz, jelenleg csak prototípus

Véletlenszám generálás Herendi Tamás lineárisan rekurzív, egyenletes eloszlású pszeudo-véletlen számsorozat generáló algoritmusa A sorozatok periódushossza nagyon nagy (tetszőlegesen nagy lehet) Új elemek kiszámítása egyszerű A sorozat alakja: Az együtthatók valamilyen P(x) irreducibilis polinomra:

Véletlenszám generálás A következő négy sorozatból pontosan egy egyenletes eloszlású: Kettő könnyen kizárható

Mátrixhatványozás Legyen a sorozat társmátrixa. Számítsuk ki a hatványt (a mátrix méretében exponenciálisan magas!) Ha az egységmátrixok kapjuk, akkor a sorozat periódushossza és pontosan a másik sorozat lesz egyenletes eloszlású

Mátrixhatványozás Virtex-5 LX110T-n létrehozott implementáció Sorba kapcsolt LUT-ok száma: 28 Szorzó órajel frekvenciája: 100MHz Mátrixok mérete: 896×896 Számítás ideje: 64800 órajel Intel E8400 3GHz Dual Core CPU: Matlab implementáció: ~6 perc Magasan optimalizált C++ program: ~105 másodperc FPGA implementáció: ~0.6 másodperc

Mátrixhatványozás Továbbfejlesztés: A sebesség fő korlátja az I/O NI pályázat 2012: A bonyolult adatmozgatás egyszerűsítésére LabView elemek felhasználása (a kritikus szakaszt VHDL-ben implementálva): nagy méretek mellett gyorsítana, de a kapott LX50 FPGA kis teljesítményű

Polinom redukció Az adatmozgatás bonyolult, mert a mátrixok nagyok és négyzetesen sok tárhelyet foglalnak! A polinomok tárkihasználása lényegesen jobb (lineáris) A cél itt a megfelelő P(x) irreducibilis polinom megtalálása A sorozatok periódushossza jelentősen növelhető! A futási idő összemérhető a mátrix-implementációval 1021-fokú polinom: 0.014 másodperc

Polinom redukció Az elérhető maximális periódushossz nagyságrendje: Mátrixokkal: ~2^1000-2^10000 Polinomokkal: ~2^2000-2^1000000 Az elérhető méret a felhasznált memória-típusokkal rohamosan nő (register - distributed memory - block RAM - DDR RAM) Kihasználja a Morpheus kártya által nyújtott jelentős erőforrásokat

Célok Rövidtávú cél: rekord kísérlet Leghosszabb használt periódushossz pszeudo-véletlen sorozatoknál: 2^2^17 (~2^130000) Eredmények publikálása/előadása konferencián Hosszútávú cél: az FPGA fejlesztési folyamatának felgyorsítása Alacsony szintű HDL nyelv helyett magasabb szintű nyelv fordítása FPGA-ra

Köszönöm a figyelmet kérdések