ČVUT FEL Katedra počítačů Matematické a fyzikální výpočty na grafických kartách (DirectX 9 + DirectX 10) Bc. Jindřich Gottwald vedoucí: Ing. Ivan Šimeček,

Slides:



Advertisements
Podobné prezentace
Stručný přehled OpenGL Jiří Danihelka. Co je OpenGL?  Open Graphics Library  Knihovna pro počítačovou grafiku  Zhruba 120 funkcí  Představuje standard.
Advertisements

Tato prezentace byla vytvořena
Počítačová skříň Základní deska Procesor Operační paměť Zdroj napětí
Davy v počítačové grafice
Vestavný modul pro počítačové vidění využívající hradlové pole Diplomová práce, Bc. Jan Šváb ČVUT Praha, Fakulta Elektrotechnická.
Procesory Filip Skulník.
Úvod. Základní úrovně: hardwarová (procesory, jádra) programová (procesy, vlákna) algoritmická (uf... ) Motivace: zvýšení výkonu redundance jiné cíle,
Zpracování programu programovatelným automatem. Zpracování programu na PA se vykonává v periodicky se opakujícím uzavřeném cyklu, tzv. scanu. Nejprve.
Principy překladačů Architektury procesorů Jakub Yaghob.
Ř ADIČ ELEKTROLUMINISCENČNÍHO DISPLEJE, VEKTOROVÉHO DISPLEJE, SHADERY.
Hana Kotinová Struktura a cíl práce Metody předzpracování dat Systémy předzpracování dat Historie vývoje DPT Jak program pracuje Budoucnost.
16 - Binární logika Logické operace v dvouhodnotové algebře. Přípustné hodnoty proměnných jsou teda pouze logická 0 (FALSE - nepravdivý) a logická 1 (TRUE.
S BĚRNICE PRO GRAF. KARTY Funkce graf. karet Rendering.
A1PRG - Programování – Seminář Ing. Michal Operátory (2. část) 4 Verze
GRAFICKÉ KARTY Úvodem:
Paměťové obvody a vývoj mikroprocesoru
Tato prezentace byla vytvořena
Grafický akcelerátor. Grafické karty mají za sebou dlouhý vývoj.
Co vše nám může tvořit počítačovou sestavu
Výrok „Počítač je pouze tak inteligentní jako jeho uživatel.“ (Radek Lochman, dnes)
Výrok "Sedíme tady a snažíme se dát na hromadu několik PC a zapálit je. A ty zatracené věci ne a ne hořet. To je jediná věc, která se IBM skutečně povedla.
Síťové karty Eva Zdráhalová 4. Z. Obsah prezentace 1. Role síťové karty Příprava dat 5 3. Posílání a kontrola dat Volby konfigurace.
Gymnázium Dr. Emila Holuba, Holice.  Paměti RAM  Grafické karty  Zvukové karty.
Zdroj Parametry – napájení všech komponent PC
Neuronové sítě na grafických akcelerátorech Ondřej Zicha, Jiří Formánek.
Informatika pro ekonomy II přednáška 10
3D CG. Základy geometrie Vertex A (x,z,y,(w)) Faceta(triangle) F(A,B,C) (polygon) F(A,B,C,D), konvexní, nekonvexní Objekt Většinou (0,1) rozměr.
OBRÁZKY Popis karty Grafická karta se stará o grafický výstup na monitor, TV obrazovku či jinou zobrazovací jednotku. V případě, že grafická karta obsahuje.
Napsal: Michal Straka Třída: 3IT Rok: 2012/2013. OSNOVA Úvod – Co je to GPU? Historie firem AMD Radeon Nvidia Porovnání výkonu Závěr.
Univerzita třetího věku kurz Pokročilý Hardware 2.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Pokročilé architektury počítačů (PAP_06.ppt) Karel Vlček, katedra Informatiky, FEI VŠB Technická Univerzita Ostrava.
Filip Fiala, 4.C.  Základní deska  Procesor  Paměťové karty  Grafické karty  Pevný disk.
CZ.1.07/1.4.00/ VY_32_INOVACE_152_IT7 Výukový materiál zpracovaný v rámci projektu Vzdělávací oblast: Informační a komunikační technologie Předmět:Informatika.
Interactive Relighting of Dynamic Refractive Objects Tomáš Šváb & Adam Dominec.
Výpočetní Cluster “Mazlik” Nové Hrady FROV JU Jihočeská univerzita v Českých Budějovicích Bc. Martin Šafánek.
Přesnost a spolehlivost v účelových sítích Bc. Jindřich Poledňák.
Pokročilé architektury počítačů (PAP_09.ppt) Karel Vlček, katedra Informatiky, FEI VŠB Technická Univerzita Ostrava.
Akcelerace genetických algoritmů na grafických kartách 4. část Mikuláš Dítě Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti.
Moderní Grafické karty.
Akcelerace genetických algoritmů na grafických kartách 3. část Mikuláš Dítě Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti.
Real time jádro operačního systému Lukáš Hamáček.
Výrok „Vypadá to, že jsme narazili na hranici toho, čeho je možné dosáhnout s počítačovými technologiemi. Člověk by si ale měl dávat pozor na takováto.
Pokročilé architektury počítačů (PAP_06.ppt) Karel Vlček, katedra Informatiky, FEI VŠB Technická Univerzita Ostrava.
Plánování trajektorie pro bezpilotní letoun za účelem sledování pozemních objektů pomocí inerciálně stabilizované kamerové platformy Michal Kreč Vedoucí.
Zpracoval :Ing. Petr Dlask, Ph.D. Pracoviště :Katedra Ekonomiky a řízení stavebnictví ČVUT v Praze Adresa :Thákurova 7, Praha 6, Dejvice Optimalizace.
POČÍTAČOVÉ HRY CVIČENÍ 9. Shadery Z „Shading“ = „stínování“ Logika vykreslování Vertex data >> obraz Implementováno na GPU PHA cvičení 9 2.
Univerzita třetího věku kurz Znalci Hardware 1.
Ukazatele, řetězce Přednáška č. 3. Ukazatele  Ukazatel (pointer) – typ o velikosti 4 bajty (v 32bit. systémech) pro uložení adresy objektu na který ukazuje.
GPGPU Výpočty pomocí grafických procesorů Zpracoval Martin Přeták.
NUMERICKÁ HOMOGENIZACE PERFOROVANÝCH DESEK
Akcelerace genetických algoritmů na grafických kartách 5. část Mikuláš Dítě.
Univerzita třetího věku kurz ECDL
Neuronové sítě.
CHRONOPHOBIA Autor: Bc. Michal Jirouš Vedoucí práce: Ing. Petr Felkel Ph.D. (3D akční hra)
IBM - CVUT Student Research Projects Implementace filtrů FIR a IIR Jaroslav Sýkora
Orbis pictus 21. století Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Blokové schéma počítače.
John von Neumannova koncepce. John von Neumann  Narozen 28. prosince 1903 Budapešť Rakousko-Uhersko  Zemřel 8. února 1957 Spojené státy americké.
Jednočipové počítače v robotických systémech Vypracoval: Ing. Jaroslav Chlubný Kód prezentace: OPVK-TBdV-AUTOROB-ME-3-JCP-JCH-001 Technologie budoucnosti.
Hardware pro počítačovou grafiku © Josef Pelikán, MFF UK Praha PGR019
Grafická karta je součást počítače, která se stará o grafický výstup na monitor, TV obrazovku či jinou zobrazovací jednotku. je součást počítače, která.
Operační systémy Grafický subsystém © Milan Keršláger Obsah:
SOFTWAROVÁ PODPORA PRO VYTVÁŘENÍ FUZZY MODELŮ Knihovna fuzzy procedur Ing. Petr Želasko, VŠB-TU Ostrava.
Grafická karta
ALU Aritmeticko-logická jednotka
Financováno z ESF a státního rozpočtu ČR.
Petr Fodor.
Výukový materiál zpracován v rámci projektu
Informatika pro ekonomy přednáška 8
Neuronové sítě.
Transkript prezentace:

ČVUT FEL Katedra počítačů Matematické a fyzikální výpočty na grafických kartách (DirectX 9 + DirectX 10) Bc. Jindřich Gottwald vedoucí: Ing. Ivan Šimeček, Ph.D. 2009

Co je GPGPU? ● General Purpose computing on Graphics Processing Unit ● obecné výpočty na grafických kartách ● využití shader jednotek grafické karty k negrafickým účelům ● (od roku 2002)

Proč GPGPU?

HW rozdíl CPU a GPU

Rozdílný přístup CPU a GPU CPU: ● optimalizován pro sekvenční zpracování ● (cache, predikce skoků) ● univerzální GPU: ● vysoce paralelní (MSIMD) ● "jednoúčelové" ● nemá bitové operace ● nemá integer ● omezená přesnost ● omezené sdílení dat

Jak na GPGPU? ● DirectX9, DirectX10, HLSL ● OpenGL, GLSL ● CUDA (Compute Unified Device Architecture) ● Brook, Brook+ ● Cg (C for Graphics) ● Ct (C for Throughput) ● OpenCL ● DirectX11 Compute Shader, HLSL

Moderní grafická pipeline

Omezení GPU ● grafická data = textury, polygony ● jednotky zpracovávají paralelně jeden kód ● jednotky pracují nezávisle, nemohou mezi sebou sdílet data ● není možné mít jedny data zároveň pro čtení i zápis

Postup GPGPU ● textura = paměťový prostor ● souřadnice = adresy ● obdélník o rozměrech textury poslat do vertex shaderu ● pixel shader provede kód nad každým pixelem ● zpracovat texely textury ● vypnout AA ● výstup pixel shaderu renderovat do jiné textury ● prohodit vstupní a výstupní textury (pingpong)

CPU implementace GE for ( int t=0; t<(height-1); t++ ) // posun pivotu { pivot = inMat[t][t]; for ( int i=(t+1); i<height; i++ ) // výpočet sloupce tmpMat[i] = inMat[t][i] / pivot; for ( int i=(t+1); i<height; i++ ) for ( int j=t; j<width; j++ ) // výpočet submatice inMat[j][i] = inMat[j][i] – tmpMat[i] * inMat[j][t]; }

GPU implementace GE PS_OUTPUT psRow (VS_OUTPUT In) : COLOR { PS_OUTPUT Out; float pivot, inMat; float pivotX, pivotY; pivotX = pivotRaw.a / pivotRaw.r; // pivot / šířka textury pivotY = pivotRaw.a / pivotRaw.g; // pivot / výška textury inMat = tex2D( mySamp, float2( pivotX, In.Tex0.y ) ).r; pivot = tex2D( mySamp, float2( pivotX, pivotY ) ).r; Out.Color.r = inMat / pivot; // výpočet sloupce return Out; }

DirectX – na co si dát pozor? DX9: ● posunutí pixelů vůči texelům o půl bodu ● normalizované souřadnice ● minimální velikost okna 32x32 DX10: ● Y souřadnice textury opačně proti viewportu ● minimální velikost okna 64x64 ● uložení textury ve správné paměti

Zrychlení GE na GPU

Zrychlení GE na GPU detail

Přesnost GPU ● i když se chlubí IEEE 754, není to ani FP32 ● starší karty dokonce ještě nižší přesnost

Závěr ● rychlost ● nepřesnost ● nepříjemnosti DX9 a DX10 ● ● budoucnost ?

Děkuji za pozornost Dotazy?

Výtky oponenta ● clipping/culling v kap. 2.3 – frustrum clipping,hierarchical Z buffer, tile based ● pouze první fáze GE ● časy načtení/uložení dat, kdy se vyplatí CPU – graf 7 = zlom při n=200 (závisí na HW) (kap 5.4) ● tab. 4 porovnání DX9/DX10 výkyv vysvětlení – optimálnějším přístupem do paměti (kap 5.4) ● relativní chyba výpočtu proti CPU – závisí na vstupních datech

Optimalizace ● pivoting – omezení vzniku nepřesností ● trojúhelník místo obdélníku – přednačítaní sousedních texelů

Výtky vedoucího ● pouze jeden algoritmus (GE) ● použitý kompilátor a nastavení ● vztah pro tab.8